[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <4E000776.7000504@redhat.com>
Date: Tue, 21 Jun 2011 10:52:38 +0800
From: Cong Wang <amwang@...hat.com>
To: Dave Anderson <anderson@...hat.com>
CC: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 00/10] Enhance /dev/mem to allow read/write of arbitrary
physical addresses
于 2011年06月20日 21:24, Dave Anderson 写道:
>> On Mon, Jun 20, 2011 at 10:42:47, Amerigo Wang<amwang@...hat.com> wrote:
>>> On Fri, Jun 17, 2011 at 5:55 PM, Petr Tesarik<ptesarik@...e.cz> wrote:
>>> Dne Pá 17. Äervna 2011 11:30:32 Ingo Molnar napsal(a):
>>>> * Petr Tesarik<ptesarik@...e.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.
Sorry, I recall that in our last discussion you didn't
mention this. But it is good to know that crash supports this!
>
> 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.
>
Hmm, looking at the code, you are right, it only has
low memory in kernel space.
But what's the problem of adding highmem into kcore? :-/
Thanks.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists