diff options
author | Anton Kling <anton@kling.gg> | 2024-04-29 18:00:20 +0200 |
---|---|---|
committer | Anton Kling <anton@kling.gg> | 2024-04-29 18:00:20 +0200 |
commit | 7d2ab3a71f4bda9d8ee997764d98b29e13a902c5 (patch) | |
tree | 6dcdc7a674a8047a2dba3e95d3be91b4e3161bd5 /kernel/sched | |
parent | d60fa1fc01e600c4a163bbe82fab3f1986cb1476 (diff) |
Kernel/Socket: Move sockets back to being file descriptors
Diffstat (limited to 'kernel/sched')
-rw-r--r-- | kernel/sched/scheduler.c | 31 | ||||
-rw-r--r-- | kernel/sched/scheduler.h | 3 |
2 files changed, 0 insertions, 34 deletions
diff --git a/kernel/sched/scheduler.c b/kernel/sched/scheduler.c index 639dd05..9a241ac 100644 --- a/kernel/sched/scheduler.c +++ b/kernel/sched/scheduler.c @@ -7,7 +7,6 @@ #include <errno.h> #include <fs/vfs.h> #include <interrupts.h> -#include <queue.h> #include <signal.h> // FIXME: Use the process_t struct instead or keep this contained in it. @@ -160,11 +159,6 @@ process_t *create_process(process_t *p, u32 esp, u32 eip) { list_init(&r->write_list); list_init(&r->disconnect_list); - list_init(&r->tcp_sockets); - list_init(&r->tcp_listen); - - list_init(&r->event_queue); - if (esp) { esp -= 4; insert_eip_on_stack(r->cr3->physical_address, esp, eip); @@ -209,9 +203,6 @@ void free_process(process_t *p) { list_free(&p->read_list); list_free(&p->write_list); list_free(&p->disconnect_list); - list_free(&p->tcp_sockets); - list_free(&p->tcp_listen); - list_free(&p->event_queue); relist_free(&p->file_descriptors); kfree(p->tcb); @@ -428,28 +419,6 @@ int is_halted(process_t *process) { } } - int queue_block = 1; - int wait_empty = 1; - for (int i = 0;; i++) { - struct event_queue *q; - if (!list_get(&process->event_queue, i, (void **)&q)) { - break; - } - int is_empty; - int rc = queue_should_block(q, &is_empty); - if (is_empty) { - wait_empty = 0; - continue; - } - if (0 == rc) { - queue_block = 0; - } - } - if (!queue_block && !wait_empty) { - kprintf("skip because queue_wait has data\n"); - return 0; - } - int fd_empty; if (isset_fdhalt(process, &fd_empty) && !fd_empty) { return 1; diff --git a/kernel/sched/scheduler.h b/kernel/sched/scheduler.h index feb6aa5..7a8bf0c 100644 --- a/kernel/sched/scheduler.h +++ b/kernel/sched/scheduler.h @@ -68,9 +68,6 @@ struct Process { struct list write_list; struct list disconnect_list; - struct list tcp_sockets; - struct list tcp_listen; - struct list event_queue; struct stack restore_context_stack; |