Re: [RFC PATCH v4 9/9] printk: use a new ringbuffer implementation

From: Geert Uytterhoeven
Date: Mon Aug 12 2019 - 05:54:15 EST


On Fri, Aug 9, 2019 at 8:16 AM Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Thu, Aug 08, 2019 at 12:07:28PM -0700, Linus Torvalds wrote:
> > End result: a DRAM buffer can work, but is not "reliable".
> > Particularly if you turn power on and off, data retention of DRAM is
> > iffy. But it's possible, at least in theory.
> >
> > So I have a patch that implements a "stupid ring buffer" for thisa
> > case, with absolutely zero data structures (because in the presense of
> > DRAM corruption, all you can get is "hopefully only slightly garbled
> > ASCII".
>
> Note that you can hook this into printk as a fake early serial device;
> just have the serial device write to the DRAM buffer.

Yep. Amiga had debug=mem for years, to write kernel messages to Chip
RAM, and retrieve them after a reboot. Cfr. amiga_console_driver and
arch/m68k/tools/amiga/dmesg.c.

BTW, with those old machines, it was not uncommon for DRAM retention
time to be 30s or so.

Gr{oetje,eeting}s,

Geert

--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@xxxxxxxxxxxxxx

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds