diff --git a/fs/dev.c b/fs/dev.c index 52faf691dc..9a72ddd54f 100644 --- a/fs/dev.c +++ b/fs/dev.c @@ -15,7 +15,7 @@ struct dev_ops *char_devs[256] = { [TTY_ALTERNATE_MAJOR] = &tty_dev, [TTY_PSEUDO_MASTER_MAJOR] = &tty_dev, [TTY_PSEUDO_SLAVE_MAJOR] = &tty_dev, - + // [DEV_RTC_MAJOR] = &rtc_dev_char, [DYN_DEV_MAJOR] = &dyn_dev_char, }; diff --git a/fs/dyndev.c b/fs/dyndev.c index dd92dc6c3c..66116e98aa 100644 --- a/fs/dyndev.c +++ b/fs/dyndev.c @@ -56,7 +56,7 @@ static intptr_t dyn_open(int type, int major, int minor, struct fd *fd) { // it's safe to access devs without locking (read-only) if(major == DEV_RTC_MAJOR) { - return rtc_dev.open(major, minor, fd); // This should be dead code. Leaving for now to test. -mke + //return rtc_dev_char(major, minor, fd); } else { struct dev_ops *ops = dyn_info_char.devs[minor]; if (ops == NULL) { @@ -69,6 +69,8 @@ static intptr_t dyn_open(int type, int major, int minor, struct fd *fd) { return 0; return ops->open(major, minor, fd); } + + return 0; } static intptr_t dyn_open_char(int major, int minor, struct fd *fd) { @@ -89,7 +91,7 @@ struct rtc_time { int tm_year; /* year */ }; -ssize_t rtc_read(void *buf, size_t count) { +intptr_t rtc_dev(void *buf, size_t count) { if (count < sizeof(struct rtc_time)) { errno = EFAULT; return -1; @@ -117,7 +119,6 @@ struct dev_ops dyn_dev_char = { .open = dyn_open_char, }; -struct dev_rtc rtc_dev = { - .open = rtc_open, - .read = rtc_read, +struct dev_ops rtc_dev_char = { + .open = rtc_dev, }; diff --git a/fs/dyndev.h b/fs/dyndev.h index c4f4811ffd..f2418f8037 100644 --- a/fs/dyndev.h +++ b/fs/dyndev.h @@ -10,7 +10,7 @@ extern struct dev_ops dyn_dev_char; // Implement fake rtc -mke -extern struct dev_rtc rtc_dev; +extern struct dev_ops rtc_dev_char; // Registeres new block/character device with provided major and // minor numbers, handled by provided ops diff --git a/jit/jit.c b/jit/jit.c index ef45b4bf8a..6eb1416474 100644 --- a/jit/jit.c +++ b/jit/jit.c @@ -253,9 +253,9 @@ static int cpu_step_to_interrupt(struct cpu_state *cpu, struct tlb *tlb) { if (last_block->jump_ip[i] != NULL && (*last_block->jump_ip[i] & 0xffffffff) == block->addr) { *last_block->jump_ip[i] = (unsigned long) block->code; - modify_critical_region_counter(current, 1, __FILE__, __LINE__); + //modify_critical_region_counter(current, 1, __FILE__, __LINE__); list_add(&block->jumps_from[i], &last_block->jumps_from_links[i]); - modify_critical_region_counter(current, -1, __FILE__, __LINE__); + //modify_critical_region_counter(current, -1, __FILE__, __LINE__); } } } diff --git a/root.tar.gz b/root.tar.gz index b7ca93357b..5668120a94 100644 Binary files a/root.tar.gz and b/root.tar.gz differ