summaryrefslogtreecommitdiff
path: root/src/kernel/arch
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/arch')
-rw-r--r--src/kernel/arch/amd64/driver/fsroot.c2
-rw-r--r--src/kernel/arch/amd64/pagedir.c2
2 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/arch/amd64/driver/fsroot.c b/src/kernel/arch/amd64/driver/fsroot.c
index 5e48638..d6e943f 100644
--- a/src/kernel/arch/amd64/driver/fsroot.c
+++ b/src/kernel/arch/amd64/driver/fsroot.c
@@ -56,7 +56,7 @@ static int req_readcopy(struct vfs_request *req, const void *buf, size_t len) {
static int handle(struct vfs_request *req) {
assert(req->caller);
- int id = (int)(long)req->id;
+ int id = (int)(long __force)req->id;
switch (req->type) {
case VFSOP_OPEN:
if (exacteq(req, "/")) return HANDLE_ROOT;
diff --git a/src/kernel/arch/amd64/pagedir.c b/src/kernel/arch/amd64/pagedir.c
index f4fbc09..75c9746 100644
--- a/src/kernel/arch/amd64/pagedir.c
+++ b/src/kernel/arch/amd64/pagedir.c
@@ -23,7 +23,7 @@ static bool addr_canonical(const __user void *addr) {
/* the types here are idiotic because C is idiotic */
static __user void *addr_canonize(const __user void *addr) {
- union virt_addr v = {.full = (void __force*)addr};
+ union virt_addr v = {.full = (void __user*)addr};
v.sign = (((uintptr_t)addr >> 47) & 1) * 0xFFFF;
assert(addr_canonical(addr));
return v.full;