5#include <sys/kassert.h>
10#include <sys/syscall.h>
36 Handle *handle, *handle_tmp;
41 (handle->
close)(handle);
void Handle_Init(Process *proc)
Handle * Handle_Lookup(Process *proc, uint64_t fd)
void Handle_Remove(Process *proc, Handle *handle)
uint64_t Handle_Add(Process *proc, Handle *handle)
void Handle_Destroy(Process *proc)
#define PROCESS_HANDLE_SLOTS
#define DEFINE_SLAB(_type, _pool)
void Slab_Init(Slab *slab, const char *name, uintptr_t objsz, uintptr_t align)
#define TAILQ_FOREACH(var, head, field)
#define TAILQ_FOREACH_SAFE(var, head, field, tvar)
#define TAILQ_REMOVE(head, elm, field)
#define TAILQ_INSERT_HEAD(head, elm, field)
HandleQueue handles[PROCESS_HANDLE_SLOTS]