> I've a stranged issue with openbsd 3.9. > > I've hacked the installer script to install openbsd automatically. Everything > works fine excepted dmesg output. > > In a normal installation from CD, after N reboot, when I do a "dmesg", I've > got only the LAST dmesg (the current boot). But with my installer, I've got > all the dmesg following. To correct, I've a solution: > > I replace the > dmesg > /var/run/dmesg.boot > in /etc/rc by > dmesg | sed -ne '/^OpenBSD /h;/^OpenBSD /!H;${g;p;}' > >/var/run/dmesg.boot > > But it doesn't explain WHY i've got this stranged issue. > > In my installer, I've replaced every user input by a static value (for > tested) > and I did'nt touch something else.
If the kernel finds that the dmesg buffer in the kernel address space is still intact after a reboot, it does not clear it. It continues to append strings to it. Some machines clear the dmesg buffer during their bootup process, as a result of destructive memory testing. Others do not, and hence, you will get the old and new dmesg's smashed together. We specifically do things this way so that any crash-related data will be retained.