Spinlock save cpu flags
This commit is contained in:
@@ -13,17 +13,25 @@
|
||||
#define MM_PG_USER (1 << 2)
|
||||
|
||||
uintptr_t mm_alloc_user_pd_phys (void);
|
||||
void mm_kernel_lock (void);
|
||||
void mm_kernel_unlock (void);
|
||||
|
||||
void mm_map_page (struct pd* pd, uintptr_t paddr, uintptr_t vaddr, uint32_t flags);
|
||||
|
||||
void mm_map_kernel_page (uintptr_t paddr, uintptr_t vaddr, uint32_t flags);
|
||||
|
||||
void mm_unmap_page (struct pd* pd, uintptr_t vaddr);
|
||||
|
||||
void mm_unmap_kernel_page (uintptr_t vaddr);
|
||||
|
||||
bool mm_validate (struct pd* pd, uintptr_t vaddr);
|
||||
|
||||
bool mm_validate_buffer (struct pd* pd, uintptr_t vaddr, size_t size);
|
||||
|
||||
uintptr_t mm_p2v (struct pd* pd, uintptr_t paddr);
|
||||
|
||||
uintptr_t mm_v2p (struct pd* pd, uintptr_t vaddr);
|
||||
|
||||
struct pd* mm_get_kernel_pd (void);
|
||||
|
||||
void mm_init (void);
|
||||
|
||||
#endif // _KERNEL_SYS_MM_H
|
||||
|
||||
@@ -4,6 +4,6 @@
|
||||
#include <libk/std.h>
|
||||
#include <proc/proc.h>
|
||||
|
||||
void do_sched (struct proc* proc, spin_lock_t* cpu_lock);
|
||||
void do_sched (struct proc* proc, spin_lock_t* cpu_lock, uint64_t lockflags);
|
||||
|
||||
#endif // _KERNEL_SYS_SCHED_H
|
||||
|
||||
@@ -5,4 +5,8 @@
|
||||
|
||||
void spin_lock_relax (void);
|
||||
|
||||
void spin_lock_save_flags (uint64_t* flags);
|
||||
|
||||
void spin_lock_restore_flags (uint64_t flags);
|
||||
|
||||
#endif // _KERNEL_SYS_SPIN_LOCK_H
|
||||
|
||||
Reference in New Issue
Block a user