On Sun, Jan 26, 2003 at 04:08:31PM +0800, Greg Lehey wrote: > On Sunday, 26 January 2003 at 14:24:02 +1030, Daniel O'Connor wrote: > > On Sun, 2003-01-26 at 08:08, David Schultz wrote: > >> Good. I was referring to IDE in this case, because I assume > >> that's what Greg's laptop uses. The ATA driver flushes the cache > >> when the device is closed, but I don't think that happens during > >> shutdown. It probably needs to register a shutdown hook like the > >> SCSI driver. Also, the driver is a bit optimistic about how long > >> the flush will take; it times out after 5 seconds, whereas the ATA > >> spec says a flush can take up to 30 seconds. > > > > I am wondering if I experienced this problem with my -stable laptop.. > > > > I shut it down and then booted it up later to find fsck having a nice > > good chew on the drive (deleting REAMS of files). > > Did you use shutdown -p? If my hypothesis is correct, it's possible > to get this result with shutdown -h if you press the power switch as > soon as the "System halted" message appears, but normally you'd give > it a few seconds longer. With shutdown -p, it's immediate, modulo > delay.
Just a random idea: If that poses an issue, how about this patch? Eugene
--- src/sys/kern_shutdown.c Sun Jan 26 14:24:56 2003 +++ src/sys/kern_shutdown.c.new Sun Jan 26 14:25:42 2003 @@ -545,7 +545,7 @@ static void poweroff_wait(void *junk, int howto) { - if(!(howto & RB_POWEROFF) || poweroff_delay <= 0) + if(!(howto & (RB_POWEROFF | RB_HALT)) || poweroff_delay <= 0) return; DELAY(poweroff_delay * 1000); }