summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--kernel/fs/devfs.c2
-rw-r--r--kernel/fs/vfs.c2
-rw-r--r--kernel/kmalloc.c25
-rw-r--r--kernel/kmalloc.h5
-rw-r--r--kernel/socket.c2
5 files changed, 3 insertions, 33 deletions
diff --git a/kernel/fs/devfs.c b/kernel/fs/devfs.c
index 0fd082d..7d880f6 100644
--- a/kernel/fs/devfs.c
+++ b/kernel/fs/devfs.c
@@ -82,7 +82,7 @@ void add_stdout(void) {
}
vfs_inode_t *devfs_mount(void) {
- vfs_inode_t *root = kmalloc_eternal(sizeof(vfs_inode_t));
+ vfs_inode_t *root = kmalloc(sizeof(vfs_inode_t));
root->open = devfs_open;
root->read = devfs_read;
root->write = devfs_write;
diff --git a/kernel/fs/vfs.c b/kernel/fs/vfs.c
index 0c62db8..dece40e 100644
--- a/kernel/fs/vfs.c
+++ b/kernel/fs/vfs.c
@@ -310,7 +310,7 @@ int vfs_ftruncate(int fd, size_t length) {
void vfs_mount(char *path, vfs_inode_t *local_root) {
int len = strlen(path);
- mounts[num_mounts].path = kmalloc_eternal(len + 1);
+ mounts[num_mounts].path = kmalloc(len + 1);
memcpy(mounts[num_mounts].path, path, len);
mounts[num_mounts].path[len] = '\0';
mounts[num_mounts].local_root = local_root;
diff --git a/kernel/kmalloc.c b/kernel/kmalloc.c
index 8a674f5..3871d62 100644
--- a/kernel/kmalloc.c
+++ b/kernel/kmalloc.c
@@ -147,31 +147,6 @@ void *kmalloc(size_t s) {
return rc;
}
-#define HEAP 0x00E00000
-#define PHYS 0x403000
-
-void *latest = NULL;
-u64 left = 0;
-
-void *kmalloc_eternal_physical_align(size_t s, void **physical) {
- void *return_address = ksbrk(s);
- if (physical) {
- if (0 == get_active_pagedirectory())
- *physical =
- (void *)((uintptr_t)return_address - (0xC0000000 + PHYS) + HEAP);
- else
- *physical = (void *)virtual_to_physical(return_address, 0);
- }
- memset(return_address, 0, 0x1000);
- return return_address;
-}
-
-void *kmalloc_eternal_align(size_t s) {
- return kmalloc_eternal_physical_align(s, NULL);
-}
-
-void *kmalloc_eternal(size_t s) { return kmalloc_eternal_align(s); }
-
size_t get_mem_size(void *ptr) {
if (!ptr)
return 0;
diff --git a/kernel/kmalloc.h b/kernel/kmalloc.h
index 6509cb0..94806f3 100644
--- a/kernel/kmalloc.h
+++ b/kernel/kmalloc.h
@@ -6,11 +6,6 @@
void kmalloc_allocate_heap(void);
-void *kmalloc_eternal(size_t size);
-void *kmalloc_eternal_align(size_t size);
-void *kmalloc_eternal_physical(size_t size, void **physical);
-void *kmalloc_eternal_physical_align(size_t size, void **physical);
-
void *kmalloc(size_t s);
void *kmalloc_align(size_t s);
void *krealloc(void *ptr, size_t size);
diff --git a/kernel/socket.c b/kernel/socket.c
index 3f78720..65ba771 100644
--- a/kernel/socket.c
+++ b/kernel/socket.c
@@ -272,7 +272,7 @@ int socket(int domain, int type, int protocol) {
if (!(AF_UNIX == domain || AF_INET == domain))
return -EINVAL;
- SOCKET *new_socket = kmalloc_eternal(sizeof(SOCKET));
+ SOCKET *new_socket = kmalloc(sizeof(SOCKET));
vfs_inode_t *inode = vfs_create_inode(
0 /*inode_num*/, FS_TYPE_UNIX_SOCKET, 0 /*has_data*/, 1 /*can_write*/,
1 /*is_open*/, new_socket /*internal_object*/, 0 /*file_size*/,