Re: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitraryphysical addresses

From: Ryan Mallon
Date: Sun Jun 19 2011 - 19:02:32 EST


On 17/06/11 19:30, Ingo Molnar wrote:
* Petr Tesarik<ptesarik@xxxxxxx> wrote:

This patch series enhances /dev/mem, so that read and write is
possible at any address. The patchset includes actual
implementation for x86.
This series lacks a description of why this is desired.

My strong opinion is that it's not desired at all: /dev/mem never
worked beyond 4G addresses so by today it has become largely obsolete
and is on the way out really.

I'm aware of these current /dev/mem uses:

- Xorg maps below 4G non-RAM addresses and the video BIOS

- It used to have some debugging role but these days kexec and kgdb
has largely taken over that role - partly due to the 4G limit.

- there's some really horrible out-of-tree drivers that do mmap()s
via /dev/mem, those should be fixed if they want to move beyond
4G: their char device should be mmap()able.

There are drivers where this makes sense. For example an FPGA device with a proprietary register layout on the memory bus can be done this way. The FPGA can simply be mapped in user-space via /dev/mem and handled there. If the device requires no access other than memory bus reads and writes then writing a custom char device driver just to get an mmap function seems a bit overkill.

~Ryan

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/