aboutsummaryrefslogtreecommitdiff
path: root/src/kernel/user
diff options
context:
space:
mode:
authorAlex Auvolat <alex@adnab.me>2015-03-11 17:59:28 +0100
committerAlex Auvolat <alex@adnab.me>2015-03-11 17:59:28 +0100
commit0b76aff59b586d87ee0449bc7deda878f4633515 (patch)
tree8fd773681e302d84bc1f33c2a2bdf791f0b0df95 /src/kernel/user
parent64b9108a58d3483e9b63511c4cf74b12dceeb0f6 (diff)
downloadkogata-0b76aff59b586d87ee0449bc7deda878f4633515.tar.gz
kogata-0b76aff59b586d87ee0449bc7deda878f4633515.zip
Add better stack tracing technology (now uses kernel memory map!)
Diffstat (limited to 'src/kernel/user')
-rw-r--r--src/kernel/user/ipc.c20
-rw-r--r--src/kernel/user/process.c4
2 files changed, 12 insertions, 12 deletions
diff --git a/src/kernel/user/ipc.c b/src/kernel/user/ipc.c
index 9149663..7f34fdf 100644
--- a/src/kernel/user/ipc.c
+++ b/src/kernel/user/ipc.c
@@ -9,15 +9,15 @@
#include <hashtbl.h>
-static size_t channel_read(fs_handle_t *c, size_t offset, size_t len, char* buf);
-static size_t channel_write(fs_handle_t *c, size_t offset, size_t len, const char* buf);
-static int channel_poll(fs_handle_t *c, void** out_wait_obj);
-static bool channel_open(fs_node_t *c, int mode);
-static bool channel_stat(fs_node_t *c, stat_t *st);
-static void channel_close(fs_handle_t *c);
-static void channel_dispose(fs_node_t *c);
-
-static fs_node_ops_t channel_ops = {
+size_t channel_read(fs_handle_t *c, size_t offset, size_t len, char* buf);
+size_t channel_write(fs_handle_t *c, size_t offset, size_t len, const char* buf);
+int channel_poll(fs_handle_t *c, void** out_wait_obj);
+bool channel_open(fs_node_t *c, int mode);
+bool channel_stat(fs_node_t *c, stat_t *st);
+void channel_close(fs_handle_t *c);
+void channel_dispose(fs_node_t *c);
+
+fs_node_ops_t channel_ops = {
.read = channel_read,
.write = channel_write,
.close = channel_close,
@@ -323,7 +323,7 @@ typedef struct {
static token_table_entry_t *expired_token = 0;
-static void token_expiration_check(void* x) {
+void token_expiration_check(void* x) {
mutex_lock(&token_table_mutex);
do {
diff --git a/src/kernel/user/process.c b/src/kernel/user/process.c
index 542c294..52f1031 100644
--- a/src/kernel/user/process.c
+++ b/src/kernel/user/process.c
@@ -81,7 +81,7 @@ error:
return 0;
}
-static void run_user_code(void* param) {
+void run_user_code(void* param) {
setup_data_t *d = (setup_data_t*)param;
void* esp = d->sp;
@@ -490,7 +490,7 @@ void proc_close_fd(process_t *p, int fd) {
// USER MEMORY REGION MANAGEMENT //
// ============================= //
-static user_region_t *find_user_region(process_t *proc, const void* addr) {
+user_region_t *find_user_region(process_t *proc, const void* addr) {
user_region_t *r = (user_region_t*)btree_lower(proc->regions_idx, addr);
if (r == 0) return 0;