yes, i think u are right.
Basically below are listed the different types of memory ranges:
#ifdef __CHECKER__
# define __user __attribute__((noderef, address_space(1)))
# define __kernel /* default address space */
# define __safe __attribute__((safe))
# define __force
i think this use to diff kernel space or user space or iomem like cpu
ring 0 to ring 3.
include/Linux/compiler.h:
#ifdef __CHECKER__
# define __user __attribute__((noderef, address_space(1)))
# define __kernel /* default address space */
# define __iomem __attribute__((noderef, address_space(2)))
Hi,
I recently came across the below #define
# define __iomem __attribute__((noderef, address_space(2)))
Browsing the internet I could find the following detail:
"iomem" means two separate things: it means that sparse should complain
if the pointer is ever dereferenced (it's a "noderef" p