diff options
-rw-r--r-- | kernel/api/access.c | 7 | ||||
-rw-r--r-- | kernel/api/syscall.c | 6 | ||||
-rw-r--r-- | kernel/drivers/disk/sata.c | 4 | ||||
-rw-r--r-- | kernel/drivers/memdevs.c | 10 | ||||
-rw-r--r-- | kernel/drivers/tty/ldisc.c | 11 | ||||
-rw-r--r-- | kernel/drivers/tty/tty.c | 4 | ||||
-rw-r--r-- | kernel/fs/namev.c | 16 | ||||
-rw-r--r-- | kernel/fs/open.c | 2 | ||||
-rw-r--r-- | kernel/fs/s5fs/s5fs.c | 21 | ||||
-rw-r--r-- | kernel/fs/s5fs/s5fs_subr.c | 13 | ||||
-rw-r--r-- | kernel/fs/vfs_syscall.c | 30 | ||||
-rw-r--r-- | kernel/fs/vnode_specials.c | 10 | ||||
-rw-r--r-- | kernel/main/kmain.c | 16 | ||||
-rw-r--r-- | kernel/proc/fork.c | 2 | ||||
-rw-r--r-- | kernel/proc/kthread.c | 14 | ||||
-rw-r--r-- | kernel/proc/proc.c | 14 | ||||
-rw-r--r-- | kernel/proc/sched.c | 23 | ||||
-rw-r--r-- | kernel/vm/anon.c | 11 | ||||
-rw-r--r-- | kernel/vm/brk.c | 2 | ||||
-rw-r--r-- | kernel/vm/mmap.c | 4 | ||||
-rw-r--r-- | kernel/vm/pagefault.c | 2 | ||||
-rw-r--r-- | kernel/vm/shadow.c | 14 | ||||
-rw-r--r-- | kernel/vm/vmmap.c | 37 |
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); |