Re: [PATCH v2] ramoops: use pstore interface

From: Kees Cook
Date: Tue Nov 29 2011 - 12:24:50 EST


On Mon, Nov 28, 2011 at 8:50 PM, Chen Gong <gong.chen@xxxxxxxxxxxxxxx> wrote:
> ä 2011/11/29 4:09, Kees Cook åé:
>>
>> Instead of using /dev/mem directly, use the common pstore infrastructure
>> to handle Oops gathering and extraction.
>>
>> Signed-off-by: Kees Cook<keescook@xxxxxxxxxxxx>
>> ---
>> This depends on the pstore changes waiting for -next in:
>>
>> http://git.kernel.org/?p=linux/kernel/git/aegl/linux.git;a=shortlog;h=refs/heads/next
>> ---
>> ÂDocumentation/ramoops.txt | Â Â8 +-
>> Âdrivers/char/Kconfig   Â|  Â1 +
>> Âdrivers/char/ramoops.c  Â| Â206
>> ++++++++++++++++++++++++++++++++++-----------
>> Â3 files changed, 160 insertions(+), 55 deletions(-)
>>
>> diff --git a/Documentation/ramoops.txt b/Documentation/ramoops.txt
>> index 8fb1ba7..a0b9d8e 100644
>> --- a/Documentation/ramoops.txt
>> +++ b/Documentation/ramoops.txt
>> @@ -3,7 +3,7 @@ Ramoops oops/panic logger
>>
>> ÂSergiu Iordache<sergiu@xxxxxxxxxxxx>
>>
>> -Updated: 8 August 2011
>> +Updated: 17 November 2011
>>
>> Â0. Introduction
>>
>> @@ -71,6 +71,6 @@ timestamp and a new line. The dump then continues with
>> the actual data.
>>
>> Â4. Reading the data
>>
>> -The dump data can be read from memory (through /dev/mem or other means).
>> -Getting the module parameters, which are needed in order to parse the
>> data, can
>> -be done through /sys/module/ramoops/parameters/* .
>> +The dump data can be read from the pstore filesystem. The format for
>> these
>> +files is "dmesg-ramoops-N", where N is the record number in memory. To
>> delete
>> +a stored record from RAM, simply unlink the respective pstore file.
>
> I think the definition of "mem_address" in the doc is not very clear. It is
> not a normal memory instead of a persistent RAM. I suggest adding more
> descriptions.
> It's better if there is a real example.

Okay. I'm not sure it's in the scope of this patch, but I can try.

Marco, do you have suggestions for how this could be enhanced?

>...
>> + Â Â Â /* Only store crash dumps. */
>> Â Â Â Âif (reason != KMSG_DUMP_OOPS&&
>> Â Â Â Âreason != KMSG_DUMP_PANIC&&
>> Â Â Â Âreason != KMSG_DUMP_KEXEC)
>
> As Andrew mentioned here (http://lkml.org/lkml/2011/11/28/495),
> who should take this responsibility to fix this issue when conflicting

Has the "remove KMSG_DUMP_KEXEC" patch been taken? I'm happy to drop
it from the ramoops patch. It's trivial to do so.

-Kees

--
Kees Cook
ChromeOS Security
--
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/