Messages in this thread | | | Date | Sun, 17 Jan 2010 18:47:10 +0200 | Subject | /dev/mem implementation | From | Felix Rubinstein <> |
| |
The recent kernels use CONFIG_STRICT_DEVMEM and CONFIG_X86_PAT concerning the /dev/mem (/dev/kmem) so interchangeably one cannot figure out what exactly does it mean to access the /dev/mem if both CONFIG_STRICT_DEVMEM and CONFIG_X86_PAT are disabled.
It would be more logically to remove pat_enabled variable in arch/x86/mm/pat.c and to make everything under CONFIG_X86_PAT define. The same goes for phys_mem_access_prot_allowed function (from arch/x86/mm/pat.c) even though CONFIG_X86_PAT is disabled. To make the story worse there are four implementations of range_is_allowed depending on how CONFIG_STRICT_DEVMEM and CONFIG_X86_PAT are defined.
I see the motivation to limit the access to DRAM from root account CONFIG_STRICT_DEVMEM by mmap'ing /dev/[k]mem but it's easily overruled by simple char driver and implementing mmap of it's own totally bypassing all limitations.
What do you think about it guy? Appreciate it.
Thanks, Felix R.
| |