<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=US-ASCII">
<META content="MSHTML 6.00.2800.1586" name=GENERATOR></HEAD>
<BODY id=role_body style="FONT-SIZE: 10pt; COLOR: #000000; FONT-FAMILY: Arial" 
bottomMargin=7 leftMargin=7 topMargin=7 rightMargin=7><FONT id=role_document 
face=Arial color=#000000 size=2>
<DIV>
<DIV>In a message dated 1/14/2007 9:01:38 P.M. Central Standard Time, 
hmh@debian.org writes:</DIV>
<BLOCKQUOTE 
style="PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: blue 2px solid"><FONT 
  style="BACKGROUND-COLOR: transparent" face=Arial color=#000000 size=2>It has 
  been doing dumb things like this for a long time now.&nbsp; It was a 
  MAJOR<BR>stupid mistake to ever try to work around this on userspace 
  (userspace<BR>simply does not know enough to get it right always, and it 
  simply *cannot*<BR>do it in suspend-to-disk, and other corner cases), and it 
  will take two or<BR>three years before we manage to fix it and remove the "do 
  it in userspace by<BR>default" crap halt(8) has to carry 
around.<BR></FONT></BLOCKQUOTE></DIV>
<DIV></DIV>
<DIV>I agree heartily, userspace ought provide the 'why', the kernel the 'how' 
and 'when'.&nbsp; </DIV>
<DIV>&nbsp;</DIV>
<DIV>There isn't anything in '/sbin/halt' that might not better be a boot up 
parameter with defaults, and 'halt' just reduced to a stub that forces parameter 
changes if need be then makes one OS call.</DIV>
<DIV>&nbsp;</DIV>
<DIV>File systems ought to know to flush their caches and otherwise handle 
shutdown/restart/sleep/resume.</DIV>
<DIV>&nbsp;</DIV>
<DIV>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.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Though new to linux, is there no&nbsp;little pool of 'kernel worker 
threads' that drains a 'to do' queue?&nbsp; 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.</DIV>
<DIV>&nbsp;</DIV>
<DIV>Harry Coin</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></FONT></BODY></HTML>