Messages in this thread | | | Date | Mon, 20 Jun 2011 09:24:33 -0400 (EDT) | From | Dave Anderson <> | Subject | Re: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary physical addresses |
| |
> On Mon, Jun 20, 2011 at 10:42:47, Amerigo Wang <amwang@redhat.com> wrote: >> On Fri, Jun 17, 2011 at 5:55 PM, Petr Tesarik <ptesarik@suse.cz> wrote: >> Dne Pá 17. Äervna 2011 11:30:32 Ingo Molnar napsal(a): >>> * Petr Tesarik <ptesarik@suse.cz> 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. >> >> Hi Ingo, >> >>> 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. >> >> It is still used as a "memory source" by Dave Anderson's crash utility for >> live examination of a running system. Redhat has "overcome" the /dev/mem >> deficiencies by writing an out-of-tree re-implementation of /dev/mem, which >> uses /dev/crash instead. As it is an "unnecessary duplication of an existing >> driver", this method was rejected by the project manager here at SUSE. >> >> The suggested alternative was to enhance (or fix) the existing driver. Without >> this patch series there is no way to access high memory. In conjunction with >> CONFIG_HIGHPTE, it makes the crash utility near to useless on anything with >> high memory, because crash can no longer translate virtual to physical >> addresses. >> > > How about /proc/kcore? AFAIK, it can access highmem, but Dave didn't consider > it for some reason.
I don't know what you mean by I "didn't consider it", because the crash utility does support using /proc/kcore as an alternative live memory source.
The problem is that /proc/kcore can only access highmem if it is mapped as kernel virtual address. So it cannot read 32-bit highmem PTE's, user-space memory, etc.
Dave
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |