I'm finding now that we MUST have persistent log buffer for some of our nodes -- such as the cluster-labs nodes that have no serial port and no ether console (yet). I want to have linuxbios logs go into a kernel-accessible log buffer, and I want linux log buffers to survive reboot/reset.
I need some comments on how to do this. I did it in LOBOS and it worked well. What I did there is reserve space in the Linux image starting at offset 4096 to offset 20000, i.e. 16 KB, and had the usual linux pointers into that space also at known offsets in the kernel image. Then both linuxbios and linux could put messages at that place. Linux could look at the pointers on boot and if they were non-zero and sane (i.e. inside the buffer) then it could just use them. None of this is new. BSD invented it ca. 1980, and SunOS uses it to this day. PCs never have due to their affinity for zeroing memory. We have a chance to fix that problem. Where should log_buf be? I don't like the fixed offset in the kernel image. One option is the last 64K of physical RAM. Any comments? I am going to work up a patch absent any ideas from this group. ron
