On Sun, Aug 9, 2015 at 8:32 PM, Finn Thain <fth...@telegraphics.com.au> wrote:
> > On Sun, 9 Aug 2015, Geert Uytterhoeven wrote: > > It's the internal buffer for printk(): > > > > kernel/printk/printk.c:static char __log_buf[__LOG_BUF_LEN] ... > > Right, thanks. If I run this, > > $ m68k-linux-gnu-readelf -a boot/vmlinux-4.1.4-mac | grep __log_buf > 1723: 003286c8 16384 OBJECT LOCAL DEFAULT 10 __log_buf > > I can see that it has address 0x003286c8 and length 16384 bytes. I believe > this is the physical address. But I have no idea whether it will show up > in MacsBug at that address. > Don't ask me to explain why, but it does. I think those are virtual addresses, but by good fortune it just so happens to directly translate to a physical address. You can do a quick sanity check by inspecting the value of log_buf, which is a pointer to __log_buf, so should contain the value 003286c8. > > If it could be located easily and if it did not get clobbered (entirely or > partially) by the ROM or by MacOS, it could be very useful at times. > I've had good luck with it remaining intact as long as you drop into MacsBug right away. Only downside is earlyprintk != printk, as I've come to find out, so those oh so valuable early messages won't be present. -Greg