aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Foiani <mfoiani@cs.brown.edu>2024-05-15 18:17:49 -0400
committerMichael Foiani <mfoiani@cs.brown.edu>2024-05-15 18:17:49 -0400
commit3942ec1841219e9d1033f583ebfcf687cb76a4af (patch)
tree13168b263ee28ce2d0867cac47b0fc90bf23b815
parent77408081bd2622c50d9acbcec18f1c598738fdaa (diff)
FINAfinal submission (for real this time)HEADmaster
-rw-r--r--kernel/api/access.c7
-rw-r--r--kernel/api/syscall.c6
-rw-r--r--kernel/drivers/disk/sata.c4
-rw-r--r--kernel/drivers/memdevs.c10
-rw-r--r--kernel/drivers/tty/ldisc.c11
-rw-r--r--kernel/drivers/tty/tty.c4
-rw-r--r--kernel/fs/namev.c16
-rw-r--r--kernel/fs/open.c2
-rw-r--r--kernel/fs/s5fs/s5fs.c21
-rw-r--r--kernel/fs/s5fs/s5fs_subr.c13
-rw-r--r--kernel/fs/vfs_syscall.c30
-rw-r--r--kernel/fs/vnode_specials.c10
-rw-r--r--kernel/main/kmain.c16
-rw-r--r--kernel/proc/fork.c2
-rw-r--r--kernel/proc/kthread.c14
-rw-r--r--kernel/proc/proc.c14
-rw-r--r--kernel/proc/sched.c23
-rw-r--r--kernel/vm/anon.c11
-rw-r--r--kernel/vm/brk.c2
-rw-r--r--kernel/vm/mmap.c4
-rw-r--r--kernel/vm/pagefault.c2
-rw-r--r--kernel/vm/shadow.c14
-rw-r--r--kernel/vm/vmmap.c37
23 files changed, 1 insertions, 272 deletions
diff --git a/kernel/api/access.c b/kernel/api/access.c
index 944277c..7dff240 100644
--- a/kernel/api/access.c
+++ b/kernel/api/access.c
@@ -116,12 +116,6 @@ long user_vecdup(argvec_t *uvec, char ***kvecp)
*/
long addr_perm(proc_t *p, const void *vaddr, int perm)
{
- // NOT_YET_IMPLEMENTED("vm:: addr_perm");
-
- // loop through the vmareas in the process's vmmap
- // vmarea_t *vma = vmmap_lookup(p->p_vmmap, ADDR_TO_PN(vaddr));
- // return vma && !!(perm & vma->vma_prot);
-
vmarea_t *vma = vmmap_lookup(p->p_vmmap, ADDR_TO_PN(vaddr));
if (vma == NULL)
{
@@ -143,7 +137,6 @@ long addr_perm(proc_t *p, const void *vaddr, int perm)
*/
long range_perm(proc_t *p, const void *vaddr, size_t len, int perm)
{
- // NOT_YET_IMPLEMENTED("vm:: range_perm");
size_t start = ADDR_TO_PN(vaddr);
size_t end = ADDR_TO_PN(PAGE_ALIGN_UP(vaddr + len));
while (start < end)
diff --git a/kernel/api/syscall.c b/kernel/api/syscall.c
index c5fea6d..3b4bcc3 100644
--- a/kernel/api/syscall.c
+++ b/kernel/api/syscall.c
@@ -69,8 +69,6 @@ void syscall_init(void) { intr_register(INTR_SYSCALL, syscall_handler); }
*/
static long sys_read(read_args_t *args)
{
- // NOT_YET_IMPLEMENTED("VM: sys_read");
-
// Initialize a read_args_t struct locally in kernel space and copy from userland args.
read_args_t kargs;
long ret = copy_from_user(&kargs, args, sizeof(kargs));
@@ -128,8 +126,6 @@ static long sys_read(read_args_t *args)
*/
static long sys_write(write_args_t *args)
{
- // NOT_YET_IMPLEMENTED("VM: sys_write");
-
// Initialize a write_args_t struct locally in kernel space and copy from userland args.
write_args_t kargs;
long ret = copy_from_user(&kargs, args, sizeof(kargs));
@@ -185,8 +181,6 @@ static long sys_write(write_args_t *args)
*/
static long sys_getdents(getdents_args_t *args)
{
- // NOT_YET_IMPLEMENTED("VM: sys_getdents");
-
// Copy the arguments from user memory
getdents_args_t kargs;
long ret = copy_from_user(&kargs, args, sizeof(kargs));
diff --git a/kernel/drivers/disk/sata.c b/kernel/drivers/disk/sata.c
index 8ba61ae..6f4880d 100644
--- a/kernel/drivers/disk/sata.c
+++ b/kernel/drivers/disk/sata.c
@@ -489,8 +489,6 @@ void sata_init()
long sata_read_block(blockdev_t *bdev, char *buf, blocknum_t block,
size_t block_count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: sata_read_block");
-
// convert block to sector
ssize_t lba = block * SATA_SECTORS_PER_BLOCK;
ssize_t count = block_count * SATA_SECTORS_PER_BLOCK;
@@ -526,8 +524,6 @@ long sata_read_block(blockdev_t *bdev, char *buf, blocknum_t block,
long sata_write_block(blockdev_t *bdev, const char *buf, blocknum_t block,
size_t block_count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: sata_write_block");
-
// convert block to sector
ssize_t lba = block * SATA_SECTORS_PER_BLOCK;
ssize_t count = block_count * SATA_SECTORS_PER_BLOCK;
diff --git a/kernel/drivers/memdevs.c b/kernel/drivers/memdevs.c
index 065fde8..41d0a0e 100644
--- a/kernel/drivers/memdevs.c
+++ b/kernel/drivers/memdevs.c
@@ -43,8 +43,6 @@ chardev_ops_t zero_dev_ops = {.read = zero_read,
*/
void memdevs_init()
{
- // NOT_YET_IMPLEMENTED("DRIVERS: memdevs_init");
-
// create chardev_t's for null and zero
chardev_t *null_dev = kmalloc(sizeof(chardev_t));
if (null_dev == NULL)
@@ -82,8 +80,6 @@ void memdevs_init()
*/
static ssize_t null_read(chardev_t *dev, size_t pos, void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: null_read");
- // TODO: ask about buffer checking
return 0; // return reading no bytes
}
@@ -101,8 +97,6 @@ static ssize_t null_read(chardev_t *dev, size_t pos, void *buf, size_t count)
static ssize_t null_write(chardev_t *dev, size_t pos, const void *buf,
size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: null_write");
-
// check if the buffer is NULL
if (buf == NULL)
{
@@ -128,8 +122,6 @@ static ssize_t null_write(chardev_t *dev, size_t pos, const void *buf,
*/
static ssize_t zero_read(chardev_t *dev, size_t pos, void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: zero_read");
-
// check if the buffer is NULL
if (buf == NULL)
{
@@ -149,8 +141,6 @@ static ssize_t zero_read(chardev_t *dev, size_t pos, void *buf, size_t count)
*/
static long zero_mmap(vnode_t *file, mobj_t **ret)
{
- // NOT_YET_IMPLEMENTED("VM: zero_mmap");
-
// create a new anonymous object
mobj_t *mobj = anon_create();
mobj_unlock(mobj); // unlock the object from the init
diff --git a/kernel/drivers/tty/ldisc.c b/kernel/drivers/tty/ldisc.c
index 9b77433..3746201 100644
--- a/kernel/drivers/tty/ldisc.c
+++ b/kernel/drivers/tty/ldisc.c
@@ -16,8 +16,6 @@
*/
void ldisc_init(ldisc_t *ldisc)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: ldisc_init");
-
// reset static buffer
memset(ldisc->ldisc_buffer, 0, LDISC_BUFFER_SIZE);
@@ -45,10 +43,7 @@ void ldisc_init(ldisc_t *ldisc)
*/
long ldisc_wait_read(ldisc_t *ldisc)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: ldisc_wait_read");
-
// while there are no need chars to be read, sleep
- // TODO: check if this is the right condition
while (
ldisc->ldisc_head == ldisc->ldisc_tail
)
@@ -81,8 +76,6 @@ long ldisc_wait_read(ldisc_t *ldisc)
*/
size_t ldisc_read(ldisc_t *ldisc, char *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: ldisc_read");
-
dbg(DBG_DISK, "ldisc_read: count = %d\n", count);
// read from ldisc buffer to buf
@@ -179,8 +172,6 @@ size_t ldisc_read(ldisc_t *ldisc, char *buf, size_t count)
*/
void ldisc_key_pressed(ldisc_t *ldisc, char c)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: ldisc_key_pressed");
-
switch (c)
{
case '\b':
@@ -296,8 +287,6 @@ void ldisc_key_pressed(ldisc_t *ldisc, char c)
*/
size_t ldisc_get_current_line_raw(ldisc_t *ldisc, char *s)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: ldisc_get_current_line_raw");
-
// copy the raw part of the line discipline buffer into the buffer provided
size_t i = 0;
size_t j = ldisc->ldisc_cooked;
diff --git a/kernel/drivers/tty/tty.c b/kernel/drivers/tty/tty.c
index e3c77be..74f4f33 100644
--- a/kernel/drivers/tty/tty.c
+++ b/kernel/drivers/tty/tty.c
@@ -69,8 +69,6 @@ void tty_init()
*/
ssize_t tty_read(chardev_t *cdev, size_t pos, void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: tty_read");
-
// get the mapped tty
tty_t *tty = cd_to_tty(cdev);
@@ -113,8 +111,6 @@ ssize_t tty_read(chardev_t *cdev, size_t pos, void *buf, size_t count)
*/
ssize_t tty_write(chardev_t *cdev, size_t pos, const void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("DRIVERS: tty_write");
-
// get the mapped tty
tty_t *tty = cd_to_tty(cdev);
diff --git a/kernel/fs/namev.c b/kernel/fs/namev.c
index f443b2e..2465d74 100644
--- a/kernel/fs/namev.c
+++ b/kernel/fs/namev.c
@@ -76,17 +76,6 @@ long namev_is_descendant(vnode_t *a, vnode_t *b)
long namev_lookup(vnode_t *dir, const char *name, size_t namelen,
vnode_t **res_vnode)
{
- // NOT_YET_IMPLEMENTED("VFS: namev_lookup");
-
- // KASSERT(NULL != dir);
- // KASSERT(NULL != name);
- // KASSERT(NULL != res_vnode);
-
- // if (namelen == 0)
- // {
- // return -EINVAL;
- // }
-
if (
dir->vn_ops == NULL
|| dir->vn_ops->lookup == NULL
@@ -206,8 +195,6 @@ static const char *namev_tokenize(const char **search, size_t *len)
long namev_dir(vnode_t *base, const char *path, vnode_t **res_vnode,
const char **name, size_t *namelen)
{
- // NOT_YET_IMPLEMENTED("VFS: namev_dir");
-
// Check if the pathname is nullish
if (path == NULL || *path == '\0')
{
@@ -316,9 +303,6 @@ long namev_dir(vnode_t *base, const char *path, vnode_t **res_vnode,
long namev_open(vnode_t *base, const char *path, int oflags, int mode,
devid_t devid, struct vnode **res_vnode)
{
- // NOT_YET_IMPLEMENTED("VFS: namev_open");
-
- // KASSERT(NULL != base);
KASSERT(NULL != path);
KASSERT(NULL != res_vnode);
diff --git a/kernel/fs/open.c b/kernel/fs/open.c
index e8945de..cf55934 100644
--- a/kernel/fs/open.c
+++ b/kernel/fs/open.c
@@ -62,8 +62,6 @@ long get_empty_fd(int *fd)
*/
long do_open(const char *filename, int oflags)
{
- // NOT_YET_IMPLEMENTED("VFS: do_open");
-
// Check if oflags is valid
if ((oflags & O_WRONLY) && (oflags & O_RDWR))
{
diff --git a/kernel/fs/s5fs/s5fs.c b/kernel/fs/s5fs/s5fs.c
index fc327bb..9205ecf 100644
--- a/kernel/fs/s5fs/s5fs.c
+++ b/kernel/fs/s5fs/s5fs.c
@@ -210,8 +210,6 @@ long s5fs_mount(fs_t *fs)
*/
static void s5fs_read_vnode(fs_t *fs, vnode_t *vn)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_read_vnode");
-
// Get the s5_node from the vnode
s5_node_t *s5_node = VNODE_TO_S5NODE(vn);
@@ -284,8 +282,6 @@ static void s5fs_read_vnode(fs_t *fs, vnode_t *vn)
*/
static void s5fs_delete_vnode(fs_t *fs, vnode_t *vn)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_delete_vnode");
-
// Get the s5_node from the vnode
s5_node_t *s5_node = VNODE_TO_S5NODE(vn);
@@ -381,7 +377,6 @@ static void s5fs_sync(fs_t *fs)
static ssize_t s5fs_read(vnode_t *vnode, size_t pos, void *buf, size_t len)
{
KASSERT(!S_ISDIR(vnode->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_read");
return s5_read_file(VNODE_TO_S5NODE(vnode), pos, buf, len);
}
@@ -390,7 +385,6 @@ static ssize_t s5fs_write(vnode_t *vnode, size_t pos, const void *buf,
size_t len)
{
KASSERT(!S_ISDIR(vnode->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_write");
return s5_write_file(VNODE_TO_S5NODE(vnode), pos, buf, len);
}
@@ -400,8 +394,6 @@ static ssize_t s5fs_write(vnode_t *vnode, size_t pos, const void *buf,
*/
static long s5fs_mmap(vnode_t *file, mobj_t **ret)
{
- // NOT_YET_IMPLEMENTED("VM: s5fs_mmap");
-
// Add a reference to the underlying mobj and return it
mobj_lock(&file->vn_mobj);
mobj_ref(&file->vn_mobj);
@@ -436,7 +428,6 @@ static long s5fs_mknod(struct vnode *dir, const char *name, size_t namelen,
int mode, devid_t devid, struct vnode **out)
{
KASSERT(S_ISDIR(dir->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_mknod");
// Check if the mode is not supported
if (!(S_ISCHR(mode) || S_ISBLK(mode) || S_ISREG(mode)))
@@ -515,8 +506,6 @@ static long s5fs_mknod(struct vnode *dir, const char *name, size_t namelen,
long s5fs_lookup(vnode_t *dir, const char *name, size_t namelen,
vnode_t **ret)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_lookup");
-
// Find the directory entry
size_t filepos;
long ino = s5_find_dirent(VNODE_TO_S5NODE(dir), name, namelen, &filepos);
@@ -583,7 +572,6 @@ static long s5fs_unlink(vnode_t *dir, const char *name, size_t namelen)
KASSERT(S_ISDIR(dir->vn_mode) && "should be handled at the VFS level");
KASSERT(!name_match(".", name, namelen));
KASSERT(!name_match("..", name, namelen));
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_unlink");
// Find the directory entry
s5_node_t *s5_node = VNODE_TO_S5NODE(dir);
@@ -656,8 +644,6 @@ static long s5fs_rename(vnode_t *olddir, const char *oldname, size_t oldnamelen,
vnode_t *newdir, const char *newname,
size_t newnamelen)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_rename");
-
// Check if the new name is too long
if (newnamelen >= NAME_LEN)
{
@@ -779,8 +765,7 @@ static long s5fs_mkdir(vnode_t *dir, const char *name, size_t namelen,
struct vnode **out)
{
KASSERT(S_ISDIR((dir)->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_mkdir");
-
+
// Allocate a new inode, get its properties first
s5fs_t *s5fs = VNODE_TO_S5FS(dir);
uint16_t type = S5_TYPE_DIR;
@@ -863,7 +848,6 @@ static long s5fs_rmdir(vnode_t *parent, const char *name, size_t namelen)
KASSERT(!name_match(".", name, namelen));
KASSERT(!name_match("..", name, namelen));
KASSERT(S_ISDIR(parent->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_rmdir");
// Find the directory entry
s5_node_t *s5_node = VNODE_TO_S5NODE(parent);
@@ -926,7 +910,6 @@ static long s5fs_rmdir(vnode_t *parent, const char *name, size_t namelen)
static long s5fs_readdir(vnode_t *vnode, size_t pos, struct dirent *d)
{
KASSERT(S_ISDIR(vnode->vn_mode) && "should be handled at the VFS level");
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_readdir");
// Read the directory entry
s5_dirent_t s5_dirent;
@@ -965,8 +948,6 @@ static long s5fs_readdir(vnode_t *vnode, size_t pos, struct dirent *d)
*/
static long s5fs_stat(vnode_t *vnode, stat_t *ss)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5fs_stat");
-
// Get the inode
s5_inode_t *s5_inode = &VNODE_TO_S5NODE(vnode)->inode;
diff --git a/kernel/fs/s5fs/s5fs_subr.c b/kernel/fs/s5fs/s5fs_subr.c
index 731e424..c8872c0 100644
--- a/kernel/fs/s5fs/s5fs_subr.c
+++ b/kernel/fs/s5fs/s5fs_subr.c
@@ -127,7 +127,6 @@ static inline void s5_release_file_block(pframe_t **pfp)
long s5_file_block_to_disk_block(s5_node_t *sn, size_t file_blocknum,
int alloc, int *newp)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5_file_block_to_disk_block");
if (file_blocknum >= S5_MAX_FILE_BLOCKS)
{
return -EINVAL;
@@ -241,8 +240,6 @@ pframe_t *s5_cache_and_clear_block(mobj_t *mo, long block, long loc) {
*/
ssize_t s5_read_file(s5_node_t *sn, size_t pos, char *buf, size_t len)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5_read_file");
-
KASSERT(sn->vnode.vn_len == sn->inode.s5_un.s5_size);
// Check if pos is greater than or equal to the length of the file
@@ -327,8 +324,6 @@ ssize_t s5_read_file(s5_node_t *sn, size_t pos, char *buf, size_t len)
*/
ssize_t s5_write_file(s5_node_t *sn, size_t pos, const char *buf, size_t len)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5_write_file");
-
// Check if pos was beyond S5_MAX_FILE_SIZE
if (pos >= S5_MAX_FILE_SIZE)
{
@@ -422,8 +417,6 @@ ssize_t s5_write_file(s5_node_t *sn, size_t pos, const char *buf, size_t len)
*/
static long s5_alloc_block(s5fs_t *s5fs)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5_alloc_block");
-
// Protect access to the super block
s5_lock_super(s5fs);
@@ -669,7 +662,6 @@ long s5_find_dirent(s5_node_t *sn, const char *name, size_t namelen,
{
KASSERT(S_ISDIR(sn->vnode.vn_mode) && "should be handled at the VFS level");
KASSERT(S5_BLOCK_SIZE == PAGE_SIZE && "be wary, thee");
- // NOT_YET_IMPLEMENTED("S5FS: s5_find_dirent");
if (namelen == 0)
{
@@ -732,7 +724,6 @@ void s5_remove_dirent(s5_node_t *sn, const char *name, size_t namelen,
{
vnode_t *dir = &sn->vnode;
s5_inode_t *inode = &sn->inode;
- // NOT_YET_IMPLEMENTED("S5FS: s5_remove_dirent");
// Assert that the directory exists
KASSERT(S_ISDIR(dir->vn_mode));
@@ -815,8 +806,6 @@ long s5_link(s5_node_t *dir, const char *name, size_t namelen,
{
KASSERT(kmutex_owns_mutex(&dir->vnode.vn_mobj.mo_mutex));
- // NOT_YET_IMPLEMENTED("S5FS: s5_link");
-
// Find the position of the directory entry
size_t filepos;
long inode_num = s5_find_dirent(dir, name, namelen, &filepos);
@@ -866,8 +855,6 @@ long s5_link(s5_node_t *dir, const char *name, size_t namelen,
*/
long s5_inode_blocks(s5_node_t *sn)
{
- // NOT_YET_IMPLEMENTED("S5FS: s5_inode_blocks");
-
// Initialize the number of file blocks
long num_file_blocks = 0;
diff --git a/kernel/fs/vfs_syscall.c b/kernel/fs/vfs_syscall.c
index fc0878e..548eaa9 100644
--- a/kernel/fs/vfs_syscall.c
+++ b/kernel/fs/vfs_syscall.c
@@ -26,8 +26,6 @@
*/
ssize_t do_read(int fd, void *buf, size_t len)
{
- // NOT_YET_IMPLEMENTED("VFS: do_read");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -96,8 +94,6 @@ ssize_t do_read(int fd, void *buf, size_t len)
*/
ssize_t do_write(int fd, const void *buf, size_t len)
{
- // NOT_YET_IMPLEMENTED("VFS: do_write");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -165,8 +161,6 @@ ssize_t do_write(int fd, const void *buf, size_t len)
*/
long do_close(int fd)
{
- // NOT_YET_IMPLEMENTED("VFS: do_close");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -198,8 +192,6 @@ long do_close(int fd)
*/
long do_dup(int fd)
{
- // NOT_YET_IMPLEMENTED("VFS: do_dup");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -239,8 +231,6 @@ long do_dup(int fd)
*/
long do_dup2(int ofd, int nfd)
{
- // NOT_YET_IMPLEMENTED("VFS: do_dup2");
-
// Check if the file descriptors are valid
if (ofd < 0 || ofd >= NFILES || nfd < 0 || nfd >= NFILES)
{
@@ -294,8 +284,6 @@ long do_dup2(int ofd, int nfd)
*/
long do_mknod(const char *path, int mode, devid_t devid)
{
- // NOT_YET_IMPLEMENTED("VFS: do_mknod");
-
// Check if the mode is valid
if (mode != S_IFCHR && mode != S_IFBLK && mode != S_IFREG)
{
@@ -337,8 +325,6 @@ long do_mknod(const char *path, int mode, devid_t devid)
*/
long do_mkdir(const char *path)
{
- // NOT_YET_IMPLEMENTED("VFS: do_mkdir");
-
// Call namev_dir() to find the parent of the directory to be created
size_t len = 0;
const char *name = NULL;
@@ -404,8 +390,6 @@ long do_mkdir(const char *path)
*/
long do_rmdir(const char *path)
{
- // NOT_YET_IMPLEMENTED("VFS: do_rmdir");
-
// Call namev_dir() to find the parent of the directory to be removed
size_t len = 0;
const char *name = NULL;
@@ -489,8 +473,6 @@ long do_rmdir(const char *path)
*/
long do_unlink(const char *path)
{
- // NOT_YET_IMPLEMENTED("VFS: do_unlink");
-
// Call namev_dir() to find the parent of the file to be unlinked
size_t len = 0;
const char *name = NULL;
@@ -566,8 +548,6 @@ long do_unlink(const char *path)
*/
long do_link(const char *oldpath, const char *newpath)
{
- // NOT_YET_IMPLEMENTED("VFS: do_link");
-
// Resolve the oldpath
if (strlen(newpath) > NAME_LEN)
{
@@ -657,8 +637,6 @@ long do_link(const char *oldpath, const char *newpath)
*/
long do_rename(const char *oldpath, const char *newpath)
{
- // NOT_YET_IMPLEMENTED("VFS: do_rename");
-
// Get the old directory
size_t old_len = 0;
const char *old_name = NULL;
@@ -724,8 +702,6 @@ long do_rename(const char *oldpath, const char *newpath)
*/
long do_chdir(const char *path)
{
- // NOT_YET_IMPLEMENTED("VFS: do_chdir");
-
// Resolve the path
vnode_t *vnode = NULL;
long ret = namev_resolve(NULL, path, &vnode);
@@ -763,8 +739,6 @@ long do_chdir(const char *path)
*/
ssize_t do_getdent(int fd, struct dirent *dirp)
{
- // NOT_YET_IMPLEMENTED("VFS: do_getdent");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -817,8 +791,6 @@ ssize_t do_getdent(int fd, struct dirent *dirp)
*/
off_t do_lseek(int fd, off_t offset, int whence)
{
- // NOT_YET_IMPLEMENTED("VFS: do_lseek");
-
// Check if the file descriptor is valid
if (fd < 0 || fd >= NFILES)
{
@@ -871,8 +843,6 @@ off_t do_lseek(int fd, off_t offset, int whence)
*/
long do_stat(const char *path, stat_t *buf)
{
- // NOT_YET_IMPLEMENTED("VFS: do_stat");
-
// Resolve the path
vnode_t *vnode = NULL;
long ret = namev_resolve(NULL, path, &vnode);
diff --git a/kernel/fs/vnode_specials.c b/kernel/fs/vnode_specials.c
index 41d4ce2..876c62a 100644
--- a/kernel/fs/vnode_specials.c
+++ b/kernel/fs/vnode_specials.c
@@ -110,8 +110,6 @@ static long special_file_stat(vnode_t *file, stat_t *ss)
static ssize_t chardev_file_read(vnode_t *file, size_t pos, void *buf,
size_t count)
{
- // NOT_YET_IMPLEMENTED("VFS: chardev_file_read");
-
// check if the vnode represetns a chardev
if (file->vn_dev.chardev == NULL)
{
@@ -137,8 +135,6 @@ static ssize_t chardev_file_read(vnode_t *file, size_t pos, void *buf,
static long chardev_file_write(vnode_t *file, size_t pos, const void *buf,
size_t count)
{
- // NOT_YET_IMPLEMENTED("VFS: chardev_file_write");
-
// check if the vnode represents a chardev
if (file->vn_dev.chardev == NULL)
{
@@ -159,8 +155,6 @@ static long chardev_file_write(vnode_t *file, size_t pos, const void *buf,
*/
static long chardev_file_mmap(vnode_t *file, mobj_t **ret)
{
- // NOT_YET_IMPLEMENTED("VM: chardev_file_mmap");
-
// check if the vnode represents a chardev
chardev_t *dev = file->vn_dev.chardev;
if (dev == NULL)
@@ -174,8 +168,6 @@ static long chardev_file_mmap(vnode_t *file, mobj_t **ret)
static long chardev_file_fill_pframe(vnode_t *file, pframe_t *pf)
{
- // NOT_YET_IMPLEMENTED("VM: chardev_file_fill_pframe");
-
// check if the vnode represents a chardev
chardev_t *dev = file->vn_dev.chardev;
if (dev == NULL)
@@ -189,8 +181,6 @@ static long chardev_file_fill_pframe(vnode_t *file, pframe_t *pf)
static long chardev_file_flush_pframe(vnode_t *file, pframe_t *pf)
{
- // NOT_YET_IMPLEMENTED("VM: chardev_file_flush_pframe");
-
// check if the vnode represents a chardev
chardev_t *dev = file->vn_dev.chardev;
if (dev == NULL)
diff --git a/kernel/main/kmain.c b/kernel/main/kmain.c
index 14d76e2..f50fb0f 100644
--- a/kernel/main/kmain.c
+++ b/kernel/main/kmain.c
@@ -159,16 +159,6 @@ static void *initproc_run(long arg1, void *arg2)
make_devices();
#endif
- // NOT_YET_IMPLEMENTED("PROCS: initproc_run");
-
- // print all the threads in the system
- // list_iterate(&curproc->p_threads, thread, kthread_t, kt_plink)
- // {
- // dbg(DBG_THR, "Thread: %s\n", thread->kt_proc->p_name);
- // }
-
- // dbg(DBG_PROC, "%s", "In main thread!\n");
-
// proctest_main(0, NULL);
#ifdef __VM__
@@ -215,10 +205,6 @@ static void *initproc_run(long arg1, void *arg2)
*/
void initproc_start()
{
- // NOT_YET_IMPLEMENTED("PROCS: initproc_start");
-
- dbg(DBG_PROC, "Setting up the initial process and preparing it to run\n");
-
proc_t *init_proc = proc_create("init");
KASSERT(init_proc != NULL);
@@ -228,8 +214,6 @@ void initproc_start()
sched_make_runnable(init_thread);
context_make_active(&curcore.kc_ctx); // start the scheduler
- // context_make_active(&init_thread->kt_ctx);
- // TODO: ask about how the core is linked to scheduler
}
void initproc_finish()
diff --git a/kernel/proc/fork.c b/kernel/proc/fork.c
index a6436ba..cd54a7c 100644
--- a/kernel/proc/fork.c
+++ b/kernel/proc/fork.c
@@ -57,8 +57,6 @@ static uintptr_t fork_setup_stack(const regs_t *regs, void *kstack)
*/
long do_fork(struct regs *regs)
{
- // NOT_YET_IMPLEMENTED("VM: do_fork");
-
// Create a new process
proc_t *child_proc = proc_create("cf");
if (child_proc == NULL)
diff --git a/kernel/proc/kthread.c b/kernel/proc/kthread.c
index b837721..775be6b 100644
--- a/kernel/proc/kthread.c
+++ b/kernel/proc/kthread.c
@@ -68,9 +68,6 @@ void kthread_init()
kthread_t *kthread_create(proc_t *proc, kthread_func_t func, long arg1,
void *arg2)
{
- // NOT_YET_IMPLEMENTED("PROCS: kthread_create");
- dbg(DBG_THR, "ATTEMPT to create a new thread with proc name=%s, id=%d\n", proc->p_name, proc->p_pid);
-
kthread_t *new_thread = slab_obj_alloc(kthread_allocator);
if (new_thread == NULL)
{
@@ -102,8 +99,6 @@ kthread_t *kthread_create(proc_t *proc, kthread_func_t func, long arg1,
// put this thread on the process's thread list
list_insert_tail(&proc->p_threads, &new_thread->kt_plink);
- dbg(DBG_THR, "SUCCESFULLY created a new THREAD with proc name=%s, id=%d\n", proc->p_name, proc->p_pid);
-
return new_thread;
}
@@ -121,8 +116,6 @@ kthread_t *kthread_create(proc_t *proc, kthread_func_t func, long arg1,
*/
kthread_t *kthread_clone(kthread_t *thr)
{
- // NOT_YET_IMPLEMENTED("VM: kthread_clone");
-
kthread_t *new_thread = slab_obj_alloc(kthread_allocator);
if (new_thread == NULL)
{
@@ -197,12 +190,8 @@ void kthread_destroy(kthread_t *thr)
*/
void kthread_cancel(kthread_t *thr, void *retval)
{
- // NOT_YET_IMPLEMENTED("PROCS: kthread_cancel");
KASSERT(thr != curthr);
- // ask about the use of check_curthr_cancelled() in syscall_handler()
- dbg(DBG_THR, "Cancelling thread with proc name=%s, id=%d, status=%d\n",
- thr->kt_proc->p_name, thr->kt_proc->p_pid, (int) retval);
thr->kt_retval = (void *)retval;
sched_cancel(thr);
}
@@ -212,8 +201,5 @@ void kthread_cancel(kthread_t *thr, void *retval)
*/
void kthread_exit(void *retval)
{
- // NOT_YET_IMPLEMENTED("PROCS: kthread_exit");
- dbg(DBG_THR, "Exiting thread with proc name=%s, id=%d, status=%d\n",
- curthr->kt_proc->p_name, curthr->kt_proc->p_pid, (int) retval);
proc_thread_exiting(retval);
}
diff --git a/kernel/proc/proc.c b/kernel/proc/proc.c
index 199d015..3bba06b 100644
--- a/kernel/proc/proc.c
+++ b/kernel/proc/proc.c
@@ -174,7 +174,6 @@ proc_t *proc_lookup(pid_t pid)
*/
proc_t *proc_create(const char *name)
{
- // NOT_YET_IMPLEMENTED("PROCS: proc_create");
int proc_pid = _proc_getid();
if (proc_pid == -1)
{
@@ -279,9 +278,6 @@ proc_t *proc_create(const char *name)
*/
void proc_cleanup(long status)
{
- // NOT_YET_IMPLEMENTED("PROCS: proc_cleanup");
- dbg(DBG_PROC, "proc_cleanup called on proc with pid=%d with exit status=%d\n", curproc->p_pid, status);
-
curproc->p_state = PROC_DEAD;
// update state and status
@@ -339,8 +335,6 @@ void proc_cleanup(long status)
*/
void proc_thread_exiting(void *retval)
{
- // NOT_YET_IMPLEMENTED("PROCS: proc_thread_exiting");
-
proc_cleanup((long)retval);
curthr->kt_state = KT_EXITED;
@@ -357,7 +351,6 @@ void proc_thread_exiting(void *retval)
*/
void proc_kill(proc_t *proc, long status)
{
- // NOT_YET_IMPLEMENTED("PROCS: proc_kill");
KASSERT(proc != curproc && "proc_kill called on curproc");
list_iterate(&proc->p_threads, thr, kthread_t, kt_plink)
{
@@ -376,7 +369,6 @@ void proc_kill(proc_t *proc, long status)
*/
void proc_kill_all()
{
- // NOT_YET_IMPLEMENTED("PROCS: proc_kill_all");
list_iterate(&proc_list, p, proc_t, p_list_link)
{
if (
@@ -467,8 +459,6 @@ void proc_destroy(proc_t *proc)
*/
pid_t do_waitpid(pid_t pid, int *status, int options)
{
- // NOT_YET_IMPLEMENTED("PROCS: do_waitpid");
-
if (pid == 0 || options != 0 || pid < -1)
{
return -ENOTSUP;
@@ -545,10 +535,6 @@ pid_t do_waitpid(pid_t pid, int *status, int options)
*/
void do_exit(long status)
{
- // NOT_YET_IMPLEMENTED("PROCS: do_exit");
-
- dbg(DBG_PROC, "proc exiting with pid=%d and status=%ld\n", curproc->p_pid, status);
-
kthread_exit((void *)status);
}
diff --git a/kernel/proc/sched.c b/kernel/proc/sched.c
index b422ef1..98af80d 100644
--- a/kernel/proc/sched.c
+++ b/kernel/proc/sched.c
@@ -162,8 +162,6 @@ void sched_init(void)
*/
long sched_cancellable_sleep_on(ktqueue_t *queue)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_cancellable_sleep_on");
-
KASSERT(queue != NULL);
if (curthr->kt_cancelled)
@@ -190,8 +188,6 @@ long sched_cancellable_sleep_on(ktqueue_t *queue)
*/
void sched_cancel(kthread_t *thr)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_cancel");
-
thr->kt_cancelled = 1;
if (thr->kt_state == KT_SLEEP_CANCELLABLE)
@@ -234,9 +230,6 @@ void sched_cancel(kthread_t *thr)
*/
void sched_switch(ktqueue_t *queue)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_switch");
-
- // KASSERT(intr_getipl == IPL_HIGH);
intr_disable();
int oldIPL = intr_setipl(IPL_LOW); // allow interrupts to wake up the idling core
@@ -274,16 +267,6 @@ void sched_yield()
*/
void sched_make_runnable(kthread_t *thr)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_make_runnable");
-
- dbg(DBG_SCHED, "Making thread with proc pid %d runnable\n in thread\n", thr->kt_proc->p_pid);
- if (curthr)
- {
- dbg(DBG_SCHED, "I did this ^^ with thread %d\n", curthr->kt_proc->p_pid);
- } else {
- dbg(DBG_SCHED, "I did this ^^ with a null thread!\n");
- }
-
KASSERT(thr != curthr);
KASSERT(thr->kt_state != KT_RUNNABLE);
@@ -309,8 +292,6 @@ void sched_make_runnable(kthread_t *thr)
*/
void sched_sleep_on(ktqueue_t *q)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_sleep_on");
-
int oldIPL = intr_setipl(IPL_HIGH);
curthr->kt_state = KT_SLEEP;
sched_switch(q);
@@ -330,8 +311,6 @@ void sched_sleep_on(ktqueue_t *q)
*/
void sched_wakeup_on(ktqueue_t *q, kthread_t **ktp)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_wakeup_on");
-
if (sched_queue_empty(q) || q == NULL)
{
if (ktp)
@@ -357,8 +336,6 @@ void sched_wakeup_on(ktqueue_t *q, kthread_t **ktp)
*/
void sched_broadcast_on(ktqueue_t *q)
{
- // NOT_YET_IMPLEMENTED("PROCS: sched_broadcast_on");
-
while (!sched_queue_empty(q))
{
sched_make_runnable(ktqueue_dequeue(q));
diff --git a/kernel/vm/anon.c b/kernel/vm/anon.c
index 8c65b85..978ff01 100644
--- a/kernel/vm/anon.c
+++ b/kernel/vm/anon.c
@@ -27,7 +27,6 @@ static mobj_ops_t anon_mobj_ops = {.get_pframe = NULL,
*/
void anon_init()
{
- // NOT_YET_IMPLEMENTED("VM: anon_init");
anon_allocator = slab_allocator_create("anon", sizeof(mobj_t));
}
@@ -37,7 +36,6 @@ void anon_init()
*/
mobj_t *anon_create()
{
- // NOT_YET_IMPLEMENTED("VM: anon_create");
// make a new mobj
mobj_t *mobj = (mobj_t *)slab_obj_alloc(anon_allocator);
// initialize the mobj
@@ -56,15 +54,7 @@ mobj_t *anon_create()
*/
static long anon_fill_pframe(mobj_t *o, pframe_t *pf)
{
- // NOT_YET_IMPLEMENTED("VM: anon_fill_pframe");
-
- // set the pframe's mobj to the given mobj
- // pf->pf_addr = o;
- // set the pframe's flags to dirty
- // pf->pf_dirty = 1;
-
memset(pf->pf_addr, 0, PAGE_SIZE);
-
return 0;
}
@@ -79,7 +69,6 @@ static long anon_flush_pframe(mobj_t *o, pframe_t *pf) { return 0; }
*/
static void anon_destructor(mobj_t *o)
{
- // NOT_YET_IMPLEMENTED("VM: anon_destructor");
// call the default destructor
mobj_default_destructor(o);
diff --git a/kernel/vm/brk.c b/kernel/vm/brk.c
index 37bd16c..0461882 100644
--- a/kernel/vm/brk.c
+++ b/kernel/vm/brk.c
@@ -53,8 +53,6 @@
*/
long do_brk(void *addr, void **ret)
{
- // NOT_YET_IMPLEMENTED("VM: do_brk");
-
// If addr is NULL, return the current break
if (addr == NULL)
{
diff --git a/kernel/vm/mmap.c b/kernel/vm/mmap.c
index a298df4..6fd5340 100644
--- a/kernel/vm/mmap.c
+++ b/kernel/vm/mmap.c
@@ -55,8 +55,6 @@
long do_mmap(void *addr, size_t len, int prot, int flags, int fd, off_t off,
void **ret)
{
- // NOT_YET_IMPLEMENTED("VM: do_mmap");
-
// check if addr is page aligned when MAP_FIXED is specified
if (PAGE_ALIGNED(addr) == 0 && (flags & MAP_FIXED))
{
@@ -194,8 +192,6 @@ long do_mmap(void *addr, size_t len, int prot, int flags, int fd, off_t off,
*/
long do_munmap(void *addr, size_t len)
{
- // NOT_YET_IMPLEMENTED("VM: do_munmap");
-
// Check if addr is page aligned
if (PAGE_ALIGNED(addr) == 0)
{
diff --git a/kernel/vm/pagefault.c b/kernel/vm/pagefault.c
index 47b3312..b229741 100644
--- a/kernel/vm/pagefault.c
+++ b/kernel/vm/pagefault.c
@@ -50,8 +50,6 @@ void handle_pagefault(uintptr_t vaddr, uintptr_t cause)
dbg(DBG_VM, "vaddr = 0x%p (0x%p), cause = %lu\n", (void *)vaddr,
PAGE_ALIGN_DOWN(vaddr), cause);
- // NOT_YET_IMPLEMENTED("VM: handle_pagefault");
-
// Check that the vaddr is valid
if (vaddr < USER_MEM_LOW ||vaddr > USER_MEM_HIGH)
{
diff --git a/kernel/vm/shadow.c b/kernel/vm/shadow.c
index 3d37881..60b28a8 100644
--- a/kernel/vm/shadow.c
+++ b/kernel/vm/shadow.c
@@ -41,7 +41,6 @@ static mobj_ops_t shadow_mobj_ops = {.get_pframe = shadow_get_pframe,
*/
void shadow_init()
{
- // NOT_YET_IMPLEMENTED("VM: shadow_init");
shadow_allocator = slab_allocator_create("shadow", sizeof(mobj_shadow_t));
KASSERT(shadow_allocator);
}
@@ -62,8 +61,6 @@ void shadow_init()
*/
mobj_t *shadow_create(mobj_t *shadowed)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_create");
-
if (!shadowed)
{
return NULL;
@@ -118,8 +115,6 @@ mobj_t *shadow_create(mobj_t *shadowed)
*/
void shadow_collapse(mobj_t *o)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_collapse");
-
mobj_shadow_t *so = MOBJ_TO_SO(o);
mobj_t *next = so->shadowed;
while(next && next->mo_type==MOBJ_SHADOW)
@@ -200,8 +195,6 @@ void shadow_collapse(mobj_t *o)
static long shadow_get_pframe(mobj_t *o, size_t pagenum, long forwrite,
pframe_t **pfp)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_get_pframe");
- // return 0;
if (forwrite)
{
return mobj_default_get_pframe(o, pagenum, forwrite, pfp);
@@ -262,8 +255,6 @@ static long shadow_get_pframe(mobj_t *o, size_t pagenum, long forwrite,
*/
static long shadow_fill_pframe(mobj_t *o, pframe_t *pf)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_fill_pframe");
- // return -1;
pframe_t *pf_shadow = NULL;
long ret = 0;
@@ -308,8 +299,6 @@ static long shadow_fill_pframe(mobj_t *o, pframe_t *pf)
*/
static long shadow_flush_pframe(mobj_t *o, pframe_t *pf)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_flush_pframe");
- // return -1;
return 0;
}
@@ -325,12 +314,9 @@ static long shadow_flush_pframe(mobj_t *o, pframe_t *pf)
*/
static void shadow_destructor(mobj_t *o)
{
- // NOT_YET_IMPLEMENTED("VM: shadow_destructor");
mobj_default_destructor(o);
mobj_shadow_t *so = MOBJ_TO_SO(o);
- // dbg(DBG_PROC, "shadow_destructor: refcount bottom: %d\n", so->bottom_mobj->mo_refcount);
- // dbg(DBG_PROC, "shadow_destructor: refcount: %d\n", so->shadowed->mo_refcount);
// put the shadow and bottom_mobj members of the shadow object
mobj_put(&so->shadowed);
diff --git a/kernel/vm/vmmap.c b/kernel/vm/vmmap.c
index 4d671d2..5c42e47 100644
--- a/kernel/vm/vmmap.c
+++ b/kernel/vm/vmmap.c
@@ -33,8 +33,6 @@ void vmmap_init(void)
*/
vmarea_t *vmarea_alloc(void)
{
- // NOT_YET_IMPLEMENTED("VM: vmarea_alloc");
-
// Allocate a new vmarea
vmarea_t *new_vmarea = (vmarea_t *)slab_obj_alloc(vmarea_allocator);
if (new_vmarea == NULL)
@@ -62,8 +60,6 @@ vmarea_t *vmarea_alloc(void)
*/
void vmarea_free(vmarea_t *vma)
{
- // NOT_YET_IMPLEMENTED("VM: vmarea_free");
-
// Remove the vmarea from any lists it may be on
if (list_link_is_linked(&vma->vma_plink))
{
@@ -85,8 +81,6 @@ void vmarea_free(vmarea_t *vma)
*/
vmmap_t *vmmap_create(void)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_create");
-
// Allocate a new vmmap
vmmap_t *new_vmmap = (vmmap_t *)slab_obj_alloc(vmmap_allocator);
if (new_vmmap == NULL)
@@ -107,8 +101,6 @@ vmmap_t *vmmap_create(void)
*/
void vmmap_destroy(vmmap_t **mapp)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_destroy");
-
vmmap_t *map = *mapp;
// Iterate through the list of vmareas and free each one
@@ -132,8 +124,6 @@ void vmmap_destroy(vmmap_t **mapp)
*/
void vmmap_insert(vmmap_t *map, vmarea_t *new_vma)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_insert*");
-
new_vma->vma_vmmap = map;
// iterate over the list of vmareas
@@ -245,8 +235,6 @@ ssize_t vmmap_find_range(vmmap_t *map, size_t npages, int dir)
*/
vmarea_t *vmmap_lookup(vmmap_t *map, size_t vfn)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_lookup");
-
// iterate over the list of vmareas
list_iterate(&map->vmm_list, vma, vmarea_t, vma_plink)
{
@@ -297,8 +285,6 @@ void vmmap_collapse(vmmap_t *map)
*/
vmmap_t *vmmap_clone(vmmap_t *map)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_clone");
-
vmmap_collapse(map);
// Create a new vmmap
@@ -418,21 +404,6 @@ vmmap_t *vmmap_clone(vmmap_t *map)
long vmmap_map(vmmap_t *map, vnode_t *file, size_t lopage, size_t npages,
int prot, int flags, off_t off, int dir, vmarea_t **new_vma)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_map");
- // return -1;
-
- // ASK: why are these needed!!
- KASSERT(map != NULL);
- KASSERT(prot == PROT_NONE
- || prot == PROT_READ
- || prot == PROT_WRITE
- || prot == PROT_EXEC
- || prot == (PROT_READ | PROT_WRITE)
- || prot == (PROT_READ | PROT_EXEC)
- || prot == (PROT_WRITE | PROT_EXEC)
- || prot == (PROT_READ | PROT_WRITE | PROT_EXEC));
- KASSERT((flags & MAP_TYPE) == MAP_SHARED || (flags & MAP_TYPE) == MAP_PRIVATE);
-
if (lopage == 0)
{
KASSERT(dir == VMMAP_DIR_LOHI || dir == VMMAP_DIR_HILO);
@@ -550,8 +521,6 @@ long vmmap_map(vmmap_t *map, vnode_t *file, size_t lopage, size_t npages,
*/
long vmmap_remove(vmmap_t *map, size_t lopage, size_t npages)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_remove");
-
// Iterate over the list of vmareas
list_iterate(&map->vmm_list, vma, vmarea_t, vma_plink)
{
@@ -658,8 +627,6 @@ long vmmap_remove(vmmap_t *map, size_t lopage, size_t npages)
*/
long vmmap_is_range_empty(vmmap_t *map, size_t startvfn, size_t npages)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_is_range_empty");
-
// Iterate over the list of vmareas
list_iterate(&map->vmm_list, vma, vmarea_t, vma_plink)
{
@@ -700,8 +667,6 @@ long vmmap_is_range_empty(vmmap_t *map, size_t startvfn, size_t npages)
*/
long vmmap_read(vmmap_t *map, const void *vaddr, void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_read");
-
// Iterate over the page numbers
size_t vfn = ADDR_TO_PN(vaddr);
size_t end_vfn = ADDR_TO_PN(vaddr + count);
@@ -770,8 +735,6 @@ long vmmap_read(vmmap_t *map, const void *vaddr, void *buf, size_t count)
*/
long vmmap_write(vmmap_t *map, void *vaddr, const void *buf, size_t count)
{
- // NOT_YET_IMPLEMENTED("VM: vmmap_write");
-
// Iterate over the page numbers
size_t vfn = ADDR_TO_PN(vaddr);
size_t end_vfn = ADDR_TO_PN(vaddr + count);