* IS_KERNEL_ADDRESS(): Avoid the check against KERNEL_BASE or KERNEL_TOP, if
that's the limit of the addr_t domain anyway. * Defined IS_USER_ADDRESS() to !IS_KERNEL_ADDRESS(), which semantically it was already, just more verbosely. Should, in the future, avoid hundreds of useless Coverity tickets where the macros are used. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@40093 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
parent
c5f2df286e
commit
0536ff83e9
@ -9,16 +9,25 @@
|
|||||||
#define _KERNEL_KERNEL_H
|
#define _KERNEL_KERNEL_H
|
||||||
|
|
||||||
|
|
||||||
|
#include <config/types.h>
|
||||||
|
|
||||||
#include <arch_kernel.h>
|
#include <arch_kernel.h>
|
||||||
#include <arch_config.h>
|
#include <arch_config.h>
|
||||||
|
|
||||||
|
|
||||||
/* Passed in buffers from user-space shouldn't point into the kernel */
|
// macro to check whether an address is in the kernel address space (avoid
|
||||||
#define IS_USER_ADDRESS(x) \
|
// always-true checks)
|
||||||
((addr_t)(x) < KERNEL_BASE || (addr_t)(x) > KERNEL_TOP)
|
#if KERNEL_BASE == 0
|
||||||
|
# define IS_KERNEL_ADDRESS(x) ((addr_t)(x) <= KERNEL_TOP)
|
||||||
|
#elif KERNEL_TOP == __HAIKU_ADDR_MAX
|
||||||
|
# define IS_KERNEL_ADDRESS(x) ((addr_t)(x) >= KERNEL_BASE)
|
||||||
|
#else
|
||||||
|
# define IS_KERNEL_ADDRESS(x) \
|
||||||
|
((addr_t)(x) >= KERNEL_BASE && (addr_t)(x) <= KERNEL_TOP)
|
||||||
|
#endif
|
||||||
|
|
||||||
#define IS_KERNEL_ADDRESS(x) \
|
// Buffers passed in from user-space shouldn't point into the kernel.
|
||||||
((addr_t)(x) >= KERNEL_BASE && (addr_t)(x) <= KERNEL_TOP)
|
#define IS_USER_ADDRESS(x) (!IS_KERNEL_ADDRESS(x))
|
||||||
|
|
||||||
#define DEBUG_KERNEL_STACKS
|
#define DEBUG_KERNEL_STACKS
|
||||||
// Note, debugging kernel stacks doesn't really work yet. Since the
|
// Note, debugging kernel stacks doesn't really work yet. Since the
|
||||||
|
Loading…
Reference in New Issue
Block a user