Re: Some embedded topics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 28 May 2008, Rob Landley wrote:
> On Tuesday 27 May 2008 17:31:42 T Ziomek wrote:
> > If I understand correctly David is talking about logging some trace-like
> > info (so it exists before a HW watchdog expires), and having it somewhere
> > "safe" from being disturbed by a HW reset.
> 
> The standard way of doing this is to use the mem= kernel command line 
> parameter to tell the system it has less memory than it does, and using 
> what's left as a ramdisk.  Years ago I saw some userspace thing running as 
> root mmap() /dev/mem (or whatever they're calling it these days) and log to 
> it.  In theory you could even set the dmesg buffer up at the end of physical 
> memory with a smallish kernel patch, make it big, and set the kernel to doing 
> verbose printks.
> 
> The trick is A) knowing the absolute physical address at which your debug 
> buffer lives so you can find it after the reboot, B) convincing the system to 
> do something useful with it on reboot rather than just overwriting it with 
> fresh log data.

Yep, we've been doing this on Amiga for more than a decade, when `debug=mem' is
passed. Cfr. arch/m68k/tools/amiga/dmesg.c.

With kind regards,

Geert Uytterhoeven
Software Architect

Sony Network and Software Technology Center Europe
The Corporate Village · Da Vincilaan 7-D1 · B-1935 Zaventem · Belgium

Phone:    +32 (0)2 700 8453
Fax:      +32 (0)2 700 8622
E-mail:   Geert.Uytterhoeven@xxxxxxxxxxx
Internet: http://www.sony-europe.com/

Sony Network and Software Technology Center Europe
A division of Sony Service Centre (Europe) N.V.
Registered office: Technologielaan 7 · B-1840 Londerzeel · Belgium
VAT BE 0413.825.160 · RPR Brussels
Fortis Bank Zaventem · BIC GEBABEBB08A · IBAN BE39001382358619

[Index of Archives]     [Gstreamer Embedded]     [Linux MMC Devel]     [U-Boot V2]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux ARM Kernel]     [Linux OMAP]     [Linux SCSI]

  Powered by Linux