> From: "Theo de Raadt" <[email protected]> > Date: Sun, 04 Jan 2026 10:34:55 -0700 > > Mark Kettenis <[email protected]> wrote: > > > I'm 100% sure that I am booting the correct kernel. The checksum > > calculated by that code above is the same. But for some reason the > > checksum that we read back from the hibernation info on disk is > > all-zeroes. So something is going wrong. Will dig deeper when I have > > time. > > Is it just the checksum field --- or has the signature sector not > actually made it onto disk? > > There is this messy thing in subr_hibernate.c around 1954 > > /* Allow the disk to settle */ > delay(500000); > > Few days ago I asked Mike about this again. Apparently this was a workaround > for an old system, and we should not do it anymore. That was probably ahci. > But why did we need it back then? > > These new systems are nvme. Do we have a situation where the last > hibernate write operation gets skipped in subr_hibernate.c, or do we > have low-level side-effect-free io functions which don't do their > job. Is nvme_hibernate_io() failing the last write to disk?
Trying to answer those question was pretty much what I was planning to do next. I got distracted by the qwx(4) hibernate issue though.
