Bug#405870: [Pkg-sysvinit-devel] Bug#405870: sysvinit: halt binary missing ifdown, br...

Henrique de Moraes Holschuh hmh at debian.org
Tue Jan 16 21:08:15 CET 2007


On Tue, 16 Jan 2007, HarryCoin at aol.com wrote:
> File systems ought to know to flush their caches and otherwise handle  
> shutdown/restart/sleep/resume.

They do.  The storage [disk] devices don't.

> Block device drivers should be smart enough to sync on their own when idle  
> for more than a minute, and if necessary on all warnings of power / bootup 
> state  changes.

Some do, some don't.  Anyway, the kernel itself syncs its buffers for block
devices now and then, and does that fine.  Barriers (force the disk device
to sync when the kernel wants something synced, without reordering IO over
the barrier) are being implemented, but not everything is in place in every
driver and subsystem yet.

> Though new to linux, is there no little pool of 'kernel worker  threads' that 
> drains a 'to do' queue?  I sense the 'resort to user space'  might have its 
> roots there, a desire for non-blocking or parallelism in these  system state 
> change tasks.

This is already done, and works fine.  It's just that nothing in the kernel
quees a sync device or a shutdown device for scsi and ide yet, and that the
ide and scsi (also libata SATA/PATA devices) don't have the code to sync
device and shutdown (park heads) on SCSI/ide bus shutdowns either.

I have a feeling that we will have it in place on 2.6.23 or even earlier,
given that it is now far easier to implement it sanely than it was in 2.6.19
and earlier kernels.

-- 
  "One disk to rule them all, One disk to find them. One disk to bring
  them all and in the darkness grind them. In the Land of Redmond
  where the shadows lie." -- The Silicon Valley Tarot
  Henrique Holschuh




More information about the Pkg-sysvinit-devel mailing list