<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

<author contact="mailto:zbrown@tumblerings.org">Zack Brown</author>

<issue num="231" date="10 Sep 2003 00:00:00 -0800" />

<headquote>

<p>If you like Kernel Traffic and want to send me a little money, click
here:</p>

<p>

<form action="https://www.paypal.com/cgi-bin/webscr" method="post">
  <input type="hidden" name="cmd" value="_xclick"/>
  <input type="hidden" name="business" value="zbrown@tumblerings.org"/>
  <input type="hidden" name="no_shipping" value="1"/>
  <input type="hidden" name="return" value="http://www.kerneltraffic.org"/>
  <input type="hidden" name="cancel_return" value="http://www.kerneltraffic.org"/>
  <input type="image" src="https://www.paypal.com/images/x-click-but21.gif" alt="https://www.paypal.com/xclick/business=zbrown%40tumblerings.org&amp;no_note=1&amp;tax=0&amp;currency_code=USD" border="0" name="submit"/>
</form>

</p>

</headquote>

<stats posts="2456" size="12233" contrib="633" multiples="325" lastweek="192">

<person posts="58" size="271" who="Andrew Morton" />
<person posts="54" size="167" who="Alan Cox" />
<person posts="45" size="187" who="Mike Fedyk" />
<person posts="44" size="227" who="&quot;Randy.Dunlap&quot;" />
<person posts="44" size="173" who="Greg KH" />
<person posts="39" size="158" who="Jeff Garzik" />
<person posts="37" size="180" who="Geert Uytterhoeven" />
<person posts="34" size="133" who="Patrick Mochel" />
<person posts="32" size="144" who="Jamie Lokier" />
<person posts="32" size="129" who="Felipe W Damasio" />
<person posts="31" size="166" who="Nick Piggin" />
<person posts="31" size="134" who="Pavel Machek" />
<person posts="31" size="82" who="&quot;David S. Miller&quot;" />
<person posts="30" size="187" who="Adrian Bunk" />
<person posts="30" size="118" who="Russell King" />
<person posts="23" size="110" who="&quot;Richard B. Johnson&quot;" />
<person posts="23" size="102" who="Andrea Arcangeli" />
<person posts="23" size="80" who="Con Kolivas" />
<person posts="21" size="99" who="Linus Torvalds" />
<person posts="19" size="67" who="Benjamin Herrenschmidt" />
<person posts="18" size="150" who="Pavel Machek" />
<person posts="17" size="133" who="Bartlomiej Zolnierkiewicz" />
<person posts="17" size="60" who="William Lee Irwin III" />
<person posts="16" size="61" who="Marcelo Tosatti" />
<person posts="16" size="55" who="Marcelo Tosatti" />
<person posts="16" size="50" who="Christoph Hellwig" />
<person posts="15" size="104" who="Matthias Andree" />
<person posts="15" size="96" who="Jens Axboe" />
<person posts="15" size="56" who="Andries Brouwer" />
<person posts="15" size="51" who="Hans Reiser" />
<person posts="14" size="144" who="Alex Tomas" />
<person posts="14" size="120" who="Jean Tourrilhes" />
<person posts="14" size="74" who="Ian Kumlien" />
<person posts="14" size="53" who="(Valdis.Kletnieks)" />
<person posts="14" size="52" who="Pascal Schmidt" />
<person posts="13" size="59" who="Ed Sweetman" />
<person posts="13" size="55" who="Nagendra Singh Tomar" />
<person posts="13" size="46" who="Ralf Hildebrandt" />
<person posts="12" size="80" who="Rusty Russell" />
<person posts="12" size="50" who="Dave Olien" />
<person posts="12" size="45" who="&quot;David Schwartz&quot;" />
<person posts="12" size="44" who="Steven Cole" />
<person posts="12" size="42" who="Mikael Pettersson" />
<person posts="11" size="51" who="Michael Frank" />
<person posts="11" size="43" who="&quot;Martin J. Bligh&quot;" />
<person posts="11" size="38" who="Marcelo Tosatti" />
<person posts="11" size="37" who="Stephan von Krawczynski" />
<person posts="11" size="35" who="Timo Sirainen" />
<person posts="10" size="38" who="Larry McVoy" />
<person posts="10" size="36" who="&quot;J.A. Magallon&quot;" />
<person posts="10" size="36" who="Robert Love" />
<person posts="10" size="35" who="Sam Ravnborg" />
<person posts="10" size="31" who="Herbert Poetzl" />
<person posts="10" size="27" who="Felipe Alfaro Solana" />
<person posts="9" size="117" who="&quot;Pallipadi, Venkatesh&quot;" />
<person posts="9" size="108" who="Martin Schwidefsky" />
<person posts="9" size="93" who="Petr Baudis" />
<person posts="9" size="48" who="James Clark" />
<person posts="9" size="41" who="Christoph Hellwig" />
<person posts="9" size="40" who="Antonio Vargas" />
<person posts="9" size="38" who="Martin Schlemmer" />
<person posts="9" size="38" who="&quot;Robert L. Harris&quot;" />
<person posts="9" size="37" who="Andre Hedrick" />
<person posts="9" size="33" who="Ville Herva" />
<person posts="9" size="28" who="Dan Kegel" />
<person posts="9" size="24" who=" (Danny ter Haar)" />
<person posts="8" size="83" who="Jim Keniston" />
<person posts="8" size="38" who=" (Eric W. Biederman)" />
<person posts="8" size="27" who="Tejun Huh" />
<person posts="8" size="26" who="Roger Luethi" />
<person posts="8" size="26" who=" (=?iso-8859-1?q?M=E5ns_Rullg=E5rd?=)" />
<person posts="8" size="25" who="Dave Jones" />
<person posts="8" size="23" who="insecure" />
<person posts="8" size="23" who="Paul Mackerras" />
<person posts="8" size="20" who="Maciej Soltysiak" />
<person posts="7" size="38" who="Paul Fulghum" />
<person posts="7" size="34" who="John Cherry" />
<person posts="7" size="33" who="Resident Boxholder" />
<person posts="7" size="32" who="&quot;H.Rosmanith (Kernel Mailing List)&quot;" />
<person posts="7" size="30" who="Matthew Wilcox" />
<person posts="7" size="25" who="Bas Mevissen" />
<person posts="7" size="24" who="Marc-Christian Petersen" />
<person posts="7" size="23" who="James Bottomley" />
<person posts="7" size="22" who="Matt Gibson" />
<person posts="7" size="22" who="Bill Davidsen" />
<person posts="7" size="21" who="Daniel Phillips" />
<person posts="7" size="21" who="Zwane Mwaikambo" />
<person posts="7" size="20" who="Willy Tarreau" />
<person posts="6" size="183" who="Shailabh Nagar" />
<person posts="6" size="100" who="&quot;Tolentino, Matthew E&quot;" />
<person posts="6" size="51" who="Nico Schottelius" />
<person posts="6" size="49" who="Joe Perches" />
<person posts="6" size="47" who="&quot;Dale E Martin&quot;" />
<person posts="6" size="27" who="&quot;Sergey S. Kostyliov&quot;" />
<person posts="6" size="26" who="john stultz" />
<person posts="6" size="26" who="&quot;Michal Semler (volny.cz)&quot;" />
<person posts="6" size="26" who="Stephen Hemminger" />
<person posts="6" size="25" who="David Lang" />
<person posts="6" size="24" who="Jan-Benedict Glaw" />
<person posts="6" size="23" who="Krzysztof Halasa" />
<person posts="6" size="23" who="Andreas Dilger" />
<person posts="6" size="23" who="Alex Riesen" />
<person posts="6" size="22" who="Hugh Dickins" />
<person posts="6" size="22" who="Rob Landley" />
<person posts="6" size="21" who="Samuel Flory" />
<person posts="6" size="21" who="Erik Andersen" />
<person posts="6" size="20" who="=?iso-8859-1?Q?J=F6rn?= Engel" />
<person posts="6" size="19" who="Oleg Drokin" />
<person posts="6" size="19" who=" (bill davidsen)" />
<person posts="6" size="19" who="Alan Stern" />
<person posts="6" size="17" who="Rusty Trivial Russell" />
<person posts="5" size="98" who="Wes Janzen" />
<person posts="5" size="78" who="watermodem" />
<person posts="5" size="41" who="Andrey Borzenkov" />
<person posts="5" size="36" who="Panagiotis Papadakos" />
<person posts="5" size="28" who="&quot;Brown, Len&quot;" />
<person posts="5" size="26" who="Tom Rini" />
<person posts="5" size="22" who="Shantanu Goel" />
<person posts="5" size="19" who="Matt Porter" />
<person posts="5" size="18" who="Juergen Quade" />
<person posts="5" size="16" who="Matt Mackall" />
<person posts="5" size="16" who="&quot;H. Peter Anvin&quot;" />
<person posts="5" size="15" who="Werner Almesberger" />
<person posts="5" size="15" who="Arjan van de Ven" />
<person posts="5" size="15" who="Andrew de Quincey" />
<person posts="5" size="14" who="Rahul Karnik" />
<person posts="5" size="13" who="(root)" />
<person posts="4" size="76" who="Bongani Hlope" />
<person posts="4" size="58" who="Alan Cox" />
<person posts="4" size="45" who="Xose Vazquez Perez" />
<person posts="4" size="41" who="Erlend Aasland" />
<person posts="4" size="40" who="Duncan Sands" />
<person posts="4" size="34" who="Bernd Eckenfels" />
<person posts="4" size="25" who="Mitchell Blank Jr" />
<person posts="4" size="25" who="Sebastian Reichelt" />
<person posts="4" size="24" who="Claas Langbehn" />
<person posts="4" size="23" who="Gerardo Exequiel Pozzi" />
<person posts="4" size="20" who="Mario Lang" />
<person posts="4" size="18" who="Chris Heath" />
<person posts="4" size="17" who="Eyal Lebedinsky" />
<person posts="4" size="16" who="&quot;Zach, Yoav&quot;" />
<person posts="4" size="15" who="Felix Seeger" />
<person posts="4" size="15" who="Marcel Holtmann" />
<person posts="4" size="15" who="Trond Myklebust" />
<person posts="4" size="15" who="Alberto Manuel =?ISO-8859-1?Q?Brand=E3o_Sim=F5es?=" />
<person posts="4" size="14" who="Dmitry Torokhov" />
<person posts="4" size="14" who="Arnaldo Carvalho de Melo" />
<person posts="4" size="14" who="iain d broadfoot" />
<person posts="4" size="14" who="Pawel Dziekonski" />
<person posts="4" size="14" who="David T Hollis" />
<person posts="4" size="14" who="Patrick McHardy" />
<person posts="4" size="14" who="Martin Willemoes Hansen" />
<person posts="4" size="13" who="Alex Riesen" />
<person posts="4" size="13" who="Albert Cahalan" />
<person posts="4" size="13" who="Manfred Spraul" />
<person posts="4" size="13" who="Andi Kleen" />
<person posts="4" size="13" who="tonildg" />
<person posts="4" size="12" who="Jan Ischebeck" />
<person posts="4" size="12" who="&quot;kartikey bhatt&quot;" />
<person posts="4" size="11" who="Rik van Riel" />
<person posts="4" size="11" who="Cliff White" />
<person posts="4" size="11" who="Helge Hafting" />
<person posts="4" size="11" who="&quot;Stuart MacDonald&quot;" />
<person posts="4" size="10" who="(kuznet)" />
<person posts="4" size="10" who="Ivan Gyurdiev" />
<person posts="4" size="10" who="Bryan O'Sullivan" />
<person posts="4" size="9" who="John Bradford" />
<person posts="3" size="104" who="Frank Cusack" />
<person posts="3" size="63" who="Frederic Gobry" />
<person posts="3" size="49" who="Diego Calleja =?ISO-8859-15?Q?Garc=EDa?=" />
<person posts="3" size="43" who="Wim Van Sebroeck" />
<person posts="3" size="43" who="&quot;Microsoft&quot;" />
<person posts="3" size="38" who="Florian Zimmermann" />
<person posts="3" size="36" who="&quot;John Stoffel&quot;" />
<person posts="3" size="36" who="(mike.miller)" />
<person posts="3" size="35" who="(rwhron)" />
<person posts="3" size="31" who="&quot;Sebastian Piecha&quot;" />
<person posts="3" size="29" who="Carl Nygard" />
<person posts="3" size="27" who="Dave Bentham" />
<person posts="3" size="25" who="Tim Schmielau" />
<person posts="3" size="23" who="Apurva Mehta" />
<person posts="3" size="19" who="jjluza" />
<person posts="3" size="18" who="Andre Tomt" />
<person posts="3" size="16" who="Jurgen Kramer" />
<person posts="3" size="16" who="Ulrich Drepper" />
<person posts="3" size="16" who="Tupshin Harper" />
<person posts="3" size="15" who="Justin Cormack" />
<person posts="3" size="15" who="&quot;Petr Vandrovec&quot;" />
<person posts="3" size="14" who="Alex Zarochentsev" />
<person posts="3" size="13" who="Stelian Pop" />
<person posts="3" size="13" who="Peter Chubb" />
<person posts="3" size="12" who="Tomas Konir" />
<person posts="3" size="11" who="Nigel Cunningham" />
<person posts="3" size="11" who="=?koi8-r?Q?=22?=Andrey Borzenkov=?koi8-r?Q?=22=20?=" />
<person posts="3" size="11" who="&quot;Mehmet Ceyran&quot;" />
<person posts="3" size="11" who="Bryan O'Sullivan" />
<person posts="3" size="11" who="Andrew Lunn" />
<person posts="3" size="11" who="Herbert =?iso-8859-1?Q?P=F6tzl?=" />
<person posts="3" size="10" who="Samium Gromoff" />
<person posts="3" size="10" who="Nicolas Mailhot" />
<person posts="3" size="10" who="OGAWA Hirofumi" />
<person posts="3" size="10" who="Christian Guggenberger" />
<person posts="3" size="10" who="Matt Heler" />
<person posts="3" size="10" who="Tomasz =?ISO-8859-1?Q?=20B=B1tor?=" />
<person posts="3" size="10" who="jw schultz" />
<person posts="3" size="9" who="Mariusz Zielinski" />
<person posts="3" size="9" who="Stan Bubrouski" />
<person posts="3" size="9" who="(Andries.Brouwer)" />
<person posts="3" size="9" who="Dave Kleikamp" />
<person posts="3" size="9" who="Petri Koistinen" />
<person posts="3" size="9" who="&quot;Stephen C. Tweedie&quot;" />
<person posts="3" size="9" who="Elanjchezhiyan" />
<person posts="3" size="9" who="Damian Kolkowski" />
<person posts="3" size="8" who="(viro)" />
<person posts="3" size="8" who="Catalin BOIE" />
<person posts="3" size="8" who="Chris Wright" />
<person posts="3" size="8" who="Martin Konold" />
<person posts="3" size="8" who="John Levon" />
<person posts="3" size="8" who="Henrik Persson" />
<person posts="3" size="8" who="Matti Aarnio" />
<person posts="3" size="8" who="Laurent =?iso-8859-1?q?Hug=E9?=" />
<person posts="3" size="7" who="Tigran Aivazian" />
<person posts="3" size="7" who="Kurt Wall" />
<person posts="3" size="6" who="James Morris" />
<person posts="3" size="6" who="Ricky Beam" />
<person posts="2" size="86" who="Matt Tolentino" />
<person posts="2" size="42" who="Malte =?iso-8859-1?q?Schr=F6der?=" />
<person posts="2" size="35" who=" (Marcel Holtmann)" />
<person posts="2" size="32" who="(vlad)" />
<person posts="2" size="30" who="&quot;Christian Ludwig&quot;" />
<person posts="2" size="27" who="Peter Lieverdink" />
<person posts="2" size="24" who="Richard van der Veen" />
<person posts="2" size="20" who="Vinay K Nallamothu" />
<person posts="2" size="20" who="Oleg Drokin" />
<person posts="2" size="20" who="&quot;Doran, Mark&quot;" />
<person posts="2" size="19" who="(jhf)" />
<person posts="2" size="18" who="Fredrik Noring" />
<person posts="2" size="16" who="Richard Curnow" />
<person posts="2" size="16" who="&quot;M.H.VanLeeuwen&quot;" />
<person posts="2" size="13" who="Stuart Low" />
<person posts="2" size="12" who="Muli Ben-Yehuda" />
<person posts="2" size="12" who="&quot;Heikki Tuuri&quot;" />
<person posts="2" size="11" who="Lorenzo Allegrucci" />
<person posts="2" size="11" who="Claus-Justus Heine" />
<person posts="2" size="10" who="&quot;Nakajima, Jun&quot;" />
<person posts="2" size="10" who="&quot;K. Hampf&quot;" />
<person posts="2" size="10" who="&quot;Brien&quot;" />
<person posts="2" size="9" who="&quot;Chad Kitching&quot;" />
<person posts="2" size="9" who="&quot;Robert T. Johnson&quot;" />
<person posts="2" size="9" who="&quot;Nikita V. Youshchenko&quot;" />
<person posts="2" size="9" who="Stefan Winter" />
<person posts="2" size="9" who="Karol Kozimor" />
<person posts="2" size="8" who="(linas)" />
<person posts="2" size="8" who="YOSHIFUJI Hideaki / =?iso-2022-jp?B?GyRCNUhGIzFRTEAbKEI=?=" />
<person posts="2" size="8" who="Miles Bader" />
<person posts="2" size="8" who="j d" />
<person posts="2" size="8" who="Jeff Chua" />
<person posts="2" size="8" who="Deepak Saxena" />
<person posts="2" size="7" who="Vladimir Kondratiev" />
<person posts="2" size="7" who="chas williams" />
<person posts="2" size="7" who="&quot;MRS VICTORIA KOROMAH&quot;" />
<person posts="2" size="7" who="Scott Mcdermott" />
<person posts="2" size="7" who="Martin List-Petersen" />
<person posts="2" size="7" who="Supphachoke Suntiwichaya" />
<person posts="2" size="7" who="&quot;Zhang haofeng&quot;" />
<person posts="2" size="7" who="Guillaume Chazarain" />
<person posts="2" size="7" who="Arvind Sankar" />
<person posts="2" size="7" who="Soeren Sonnenburg" />
<person posts="2" size="7" who="&quot;jeff millar&quot;" />
<person posts="2" size="7" who="Gabor MICSKO" />
<person posts="2" size="7" who="Aaron Dewell" />
<person posts="2" size="7" who="Voluspa" />
<person posts="2" size="7" who="Thomas Schlichter" />
<person posts="2" size="7" who="(cb-lkml)" />
<person posts="2" size="7" who="Michael Pruznick" />
<person posts="2" size="7" who="ghugh Song" />
<person posts="2" size="6" who="Luiz Capitulino" />
<person posts="2" size="6" who="Guillaume Morin" />
<person posts="2" size="6" who="&quot;Henning P. Schmiedehausen&quot;" />
<person posts="2" size="6" who="Charles Lepple" />
<person posts="2" size="6" who="Stephane LOEUILLET" />
<person posts="2" size="6" who="joe briggs" />
<person posts="2" size="6" who="=?iso-8859-1?q?Gaston=20Gransis?=" />
<person posts="2" size="6" who="&quot;Blake B.&quot;" />
<person posts="2" size="6" who="Ali Akcaagac" />
<person posts="2" size="6" who="Tom Sightler" />
<person posts="2" size="6" who="walt" />
<person posts="2" size="6" who="Pat LaVarre" />
<person posts="2" size="6" who="Junio C Hamano" />
<person posts="2" size="6" who="Mathieu Chouquet-Stringer" />
<person posts="2" size="6" who="Marko Kreen" />
<person posts="2" size="6" who="=?ISO-8859-1?Q?Ram=F3n?= Rey =?UTF-8?Q?Vicente?=" />
<person posts="2" size="6" who="Mikulas Patocka" />
<person posts="2" size="6" who="&quot;Garrett Serack&quot;" />
<person posts="2" size="6" who="Gergely Nagy" />
<person posts="2" size="6" who="Matthew Harrell" />
<person posts="2" size="5" who="Daniel Jacobowitz" />
<person posts="2" size="5" who="&quot;Ramit Bhalla&quot;" />
<person posts="2" size="5" who="James Simmons" />
<person posts="2" size="5" who="&quot;Ihar 'Philips' Filipau&quot;" />
<person posts="2" size="5" who="&quot;Will L G&quot;" />
<person posts="2" size="5" who="=?ISO-8859-1?Q?Markus_H=E4stbacka?=" />
<person posts="2" size="5" who="Joerg Frings-Fuerst" />
<person posts="2" size="5" who="Gianni Tedesco" />
<person posts="2" size="5" who="&quot;Henry Qian&quot;" />
<person posts="2" size="5" who="(biker)" />
<person posts="2" size="5" who="Paolo Ornati" />
<person posts="2" size="5" who="Kristian Spangsege" />
<person posts="2" size="5" who="Marc Zyngier" />
<person posts="2" size="5" who="Greg Stark" />
<person posts="2" size="5" who="Justin Ossevoort" />
<person posts="2" size="5" who="Andrew de Quincey" />
<person posts="2" size="5" who="Andi Kleen" />
<person posts="2" size="5" who="Jan De Luyck" />
<person posts="2" size="5" who="Ingo Molnar" />
<person posts="2" size="5" who="Christian Axelsson" />
<person posts="2" size="5" who="&quot;Breno&quot;" />
<person posts="2" size="5" who="Arnd Bergmann" />
<person posts="2" size="5" who="&quot;LX Postmaster&quot;" />
<person posts="2" size="4" who="Scott Ashcroft" />
<person posts="2" size="4" who="Florian Weimer" />
<person posts="2" size="4" who="Anton Blanchard" />
<person posts="2" size="4" who="Jussi Laako" />
<person posts="2" size="4" who="Pawel Kot" />
<person posts="2" size="4" who="Dale Amon" />
<person posts="1" size="79" who="Harold Martin" />
<person posts="1" size="75" who="Rene Mayrhofer" />
<person posts="1" size="59" who="Mathieu LESNIAK" />
<person posts="1" size="44" who="&quot;Stefan Winter&quot;" />
<person posts="1" size="33" who="Anton Altaparmakov" />
<person posts="1" size="31" who="Marc Singer" />
<person posts="1" size="31" who="Chris Mason" />
<person posts="1" size="29" who="&quot;Alex Adriaanse&quot;" />
<person posts="1" size="28" who=" (Norman Diamond)" />
<person posts="1" size="25" who="Zoup" />
<person posts="1" size="22" who="(Werner.Beck)" />
<person posts="1" size="21" who="Daniel Higgins" />
<person posts="1" size="17" who="Christopher Swingley" />
<person posts="1" size="15" who="Sebastian Reichelt" />
<person posts="1" size="13" who="=?ISO-8859-2?Q?Rafa=B3?= 'rmrmg' Roszak" />
<person posts="1" size="12" who="Fernando Alencar =?ISO-8859-1?Q?Mar=F3stica?=" />
<person posts="1" size="12" who="Erwin Gribnau" />
<person posts="1" size="11" who="(system_lists)" />
<person posts="1" size="11" who="=?ISO-8859-1?Q?Johannes_H=F6lzl?=" />
<person posts="1" size="11" who="Reza Naima" />
<person posts="1" size="11" who="=?ks_c_5601-1987?B?udrAr8L5?=" />
<person posts="1" size="10" who="&quot;=?GB2312?Q?=D3=DA=B2=A8?=&quot;" />
<person posts="1" size="10" who="jjluza  (by way of jjluza &lt;jjluza@yahoo.fr&gt;)" />
<person posts="1" size="10" who="Paul Larson" />
<person posts="1" size="10" who="Ned Ren" />
<person posts="1" size="9" who="Ventsislav Genchev" />
<person posts="1" size="9" who="Gustav Petersson" />
<person posts="1" size="9" who="Duncan Sands" />
<person posts="1" size="9" who="Pau Aliagas" />
<person posts="1" size="9" who="&quot;dada1&quot;" />
<person posts="1" size="8" who="Jake Moilanen" />
<person posts="1" size="8" who="Matthew Dharm" />
<person posts="1" size="8" who="=?iso-8859-2?B?R+Fib3IgTOlu4XJ0?=" />
<person posts="1" size="8" who="Nico Schottelius" />
<person posts="1" size="7" who="Mark Gross" />
<person posts="1" size="7" who="=?iso-8859-1?Q?Reinaldo_Brand=E3o_Gomes?=" />
<person posts="1" size="7" who="Brendan Keessen" />
<person posts="1" size="6" who="Takao Indoh" />
<person posts="1" size="6" who="(lk)" />
<person posts="1" size="6" who="UNIVERSAL LOTTERY WINNING" />
<person posts="1" size="6" who="Ravikiran G Thirumalai" />
<person posts="1" size="6" who="Yusuf Wilajati Purna" />
<person posts="1" size="6" who="Chris PeBenito" />
<person posts="1" size="6" who="Mark Goodwin" />
<person posts="1" size="6" who="Lukasz Trabinski" />
<person posts="1" size="6" who="&quot;Thomas Spatzier&quot;" />
<person posts="1" size="6" who="Peter Chubb" />
<person posts="1" size="6" who="=?ISO-8859-1?Q?Mika_Penttil=E4?=" />
<person posts="1" size="6" who="=?ISO-8859-2?Q?Krzysztof_Ol=EAdzki?=" />
<person posts="1" size="5" who="James Morris" />
<person posts="1" size="5" who="Robert Joop" />
<person posts="1" size="5" who="Harald Welte" />
<person posts="1" size="5" who="(steveb)" />
<person posts="1" size="5" who="snpe" />
<person posts="1" size="5" who="MAtias Alejo Garcia" />
<person posts="1" size="5" who="&quot;Dr jewel H.Taylor.&quot;" />
<person posts="1" size="5" who="Krzysztof Sierota" />
<person posts="1" size="5" who="Ian Wienand" />
<person posts="1" size="5" who="&quot;Robert Williamson&quot;" />
<person posts="1" size="5" who=" (=?iso-8859-15?q?Pavel_Jan=EDk?=)" />
<person posts="1" size="5" who="Petr Vandrovec" />
<person posts="1" size="5" who="&quot;Kevin C. Weissman&quot;" />
<person posts="1" size="5" who="Nils Faerber" />
<person posts="1" size="5" who="Santiago Garcia Mantinan" />
<person posts="1" size="5" who="Peter Osterlund" />
<person posts="1" size="4" who="Ken Ryan" />
<person posts="1" size="4" who="&quot;Mark E. Donaldson&quot;" />
<person posts="1" size="4" who="Joseph Pingenot" />
<person posts="1" size="4" who="Robert Davies" />
<person posts="1" size="4" who="Matt Domsch" />
<person posts="1" size="4" who="Frank Dekervel" />
<person posts="1" size="4" who="Maneesh Soni" />
<person posts="1" size="4" who="John Alton" />
<person posts="1" size="4" who="Valmar Joandi" />
<person posts="1" size="4" who="Jakob Oestergaard" />
<person posts="1" size="4" who="Yaroslav Halchenko" />
<person posts="1" size="4" who="Karim Yaghmour" />
<person posts="1" size="4" who="Erich Focht" />
<person posts="1" size="4" who="Brandon Stewart" />
<person posts="1" size="4" who="Marc Schiffbauer" />
<person posts="1" size="4" who="Andrey Panin" />
<person posts="1" size="4" who="&quot;Mr. Samanja Garuba.&quot;" />
<person posts="1" size="4" who="TeJun Huh" />
<person posts="1" size="4" who="(linux-kernel-owner)" />
<person posts="1" size="4" who="Jan Rychter" />
<person posts="1" size="4" who="Najati Imam" />
<person posts="1" size="4" who="Vladimir Demidov" />
<person posts="1" size="4" who="John Wong" />
<person posts="1" size="4" who="Richard A Nelson" />
<person posts="1" size="4" who="Boszormenyi Zoltan" />
<person posts="1" size="4" who="Christian Jaeger" />
<person posts="1" size="4" who="&quot;Juri Bracchi Tkachenok&quot;" />
<person posts="1" size="4" who="&quot;Norman Diamond&quot;" />
<person posts="1" size="4" who="Chris Rankin" />
<person posts="1" size="4" who="Pedro Larroy" />
<person posts="1" size="4" who="Andreas Gruenbacher" />
<person posts="1" size="4" who="Steffen Klassert" />
<person posts="1" size="4" who="=?ISO-8859-1?Q?S=E9rgio?= Monteiro Basto" />
<person posts="1" size="4" who="David Lloyd" />
<person posts="1" size="4" who="Nicolas Mailhot" />
<person posts="1" size="4" who="&quot;David B. Stevens&quot;" />
<person posts="1" size="4" who="M G Berberich" />
<person posts="1" size="4" who="Takashi Iwai" />
<person posts="1" size="4" who="&quot;Kathy Frazier&quot;" />
<person posts="1" size="4" who="Kurt Garloff" />
<person posts="1" size="4" who="Mathieu Desnoyers" />
<person posts="1" size="3" who="don fisher" />
<person posts="1" size="3" who="Stefan Smietanowski" />
<person posts="1" size="3" who="Gabriel Paubert" />
<person posts="1" size="3" who="&quot;Hans Lambrechts&quot;" />
<person posts="1" size="3" who="Jurriaan" />
<person posts="1" size="3" who="Damian =?iso-8859-2?Q?Ko=B3kowski?=" />
<person posts="1" size="3" who="&quot;Bill J.Xu&quot;" />
<person posts="1" size="3" who="CaT" />
<person posts="1" size="3" who="Jes Sorensen" />
<person posts="1" size="3" who="William Gallafent" />
<person posts="1" size="3" who="NIWA Hideyuki" />
<person posts="1" size="3" who="Clemens Schwaighofer" />
<person posts="1" size="3" who="=?ISO-8859-15?Q?Mika_Penttil=E4?=" />
<person posts="1" size="3" who="&quot;Edward Wildgoose&quot;" />
<person posts="1" size="3" who="Bob Chiodini" />
<person posts="1" size="3" who="Javier Achirica" />
<person posts="1" size="3" who="Mike Dresser" />
<person posts="1" size="3" who="&quot;Dale P. Smith&quot;" />
<person posts="1" size="3" who="Jeff Chua" />
<person posts="1" size="3" who="&quot;Adam J. Richter&quot;" />
<person posts="1" size="3" who="Martin Mares" />
<person posts="1" size="3" who="Roman Zippel" />
<person posts="1" size="3" who="David Zaffiro" />
<person posts="1" size="3" who="Vojtech Pavlik" />
<person posts="1" size="3" who="Brien" />
<person posts="1" size="3" who="&quot;Daniela Engert&quot;" />
<person posts="1" size="3" who="Michael Schierl" />
<person posts="1" size="3" who="Fruhwirth Clemens" />
<person posts="1" size="3" who=" (Miles Bader)" />
<person posts="1" size="3" who="Robin Rosenberg" />
<person posts="1" size="3" who="&quot;Luis Medinas&quot;" />
<person posts="1" size="3" who="Vanitha" />
<person posts="1" size="3" who="Vladimir Lazarenko" />
<person posts="1" size="3" who="Balint Cristian" />
<person posts="1" size="3" who="Chris Mason" />
<person posts="1" size="3" who="=?iso-8859-2?Q?Staszek_Pa=B6ko?=" />
<person posts="1" size="3" who="John Jasen" />
<person posts="1" size="3" who="Kronos" />
<person posts="1" size="3" who="&quot;Miller, Mike (OS Dev)&quot;" />
<person posts="1" size="3" who="Chris Cheney" />
<person posts="1" size="3" who="dave" />
<person posts="1" size="3" who="James Vanns" />
<person posts="1" size="3" who="Yury Umanets" />
<person posts="1" size="3" who="Chris Friesen" />
<person posts="1" size="3" who="Ingo Oeser" />
<person posts="1" size="3" who="Thorsten Kranzkowski" />
<person posts="1" size="3" who="Dave Hansen" />
<person posts="1" size="3" who="David Chambers" />
<person posts="1" size="3" who="Steve Bennett" />
<person posts="1" size="3" who="Ananth N Mavinakayanahalli" />
<person posts="1" size="3" who="Matias Alejo Garcia" />
<person posts="1" size="3" who="Richard Procter" />
<person posts="1" size="3" who="Srihari Vijayaraghavan" />
<person posts="1" size="3" who="Fruhwirth Clemens" />
<person posts="1" size="3" who="Jean Delvare" />
<person posts="1" size="3" who="Daniel Egger" />
<person posts="1" size="3" who="&quot;IIDA,MASANARI (HP-Japan,ex2)&quot;" />
<person posts="1" size="3" who="Gerardo Exequiel Pozzi" />
<person posts="1" size="3" who="&quot;Stevo&quot;" />
<person posts="1" size="3" who="Francois Romieu" />
<person posts="1" size="3" who="Herbert Xu" />
<person posts="1" size="3" who="Joel Soete" />
<person posts="1" size="3" who="Keith Owens" />
<person posts="1" size="3" who="(deneux)" />
<person posts="1" size="3" who="&quot;Perez-Gonzalez, Inaky&quot;" />
<person posts="1" size="3" who="carbonated beverage" />
<person posts="1" size="3" who="Dirk Jakobsmeier" />
<person posts="1" size="3" who="Hollis Blanchard" />
<person posts="1" size="3" who="&quot;Rory&quot;" />
<person posts="1" size="3" who="Geller Sandor" />
<person posts="1" size="3" who="Norberto BENSA" />
<person posts="1" size="3" who="Ben Collins" />
<person posts="1" size="3" who="&quot;Justin T. Gibbs&quot;" />
<person posts="1" size="3" who="Johannes Erdfelt" />
<person posts="1" size="3" who="Philip Clark" />
<person posts="1" size="3" who="axel c" />
<person posts="1" size="3" who="Ingo Molnar" />
<person posts="1" size="3" who="&quot;Muthian S&quot;" />
<person posts="1" size="3" who="Juraj" />
<person posts="1" size="3" who="Adam Sampson" />
<person posts="1" size="3" who="Michael Still" />
<person posts="1" size="3" who="Torsten Werner" />
<person posts="1" size="3" who="&quot;William Scott Lockwood III&quot;" />
<person posts="1" size="2" who="&quot;Tom McCarthy&quot;" />
<person posts="1" size="2" who="&quot;Martin Schwidefsky&quot;" />
<person posts="1" size="2" who="&quot;Tvrtko A. =?iso-8859-2?q?Ur=B9ulin?=&quot;" />
<person posts="1" size="2" who="Pete Zaitcev" />
<person posts="1" size="2" who="Nuno Silva" />
<person posts="1" size="2" who="Maciej Freudenheim" />
<person posts="1" size="2" who="&quot;Wes Felter&quot;" />
<person posts="1" size="2" who="Russell Whitaker" />
<person posts="1" size="2" who="Stephane Ouellette" />
<person posts="1" size="2" who="Joonas Koivunen" />
<person posts="1" size="2" who="Norberto Bensa" />
<person posts="1" size="2" who="Mika Kukkonen" />
<person posts="1" size="2" who="Emmanuele Bassi" />
<person posts="1" size="2" who="Alistair J Strachan" />
<person posts="1" size="2" who="Marcelo Abreu" />
<person posts="1" size="2" who="&quot;jdow&quot;" />
<person posts="1" size="2" who="bert hubert" />
<person posts="1" size="2" who="Arkadiusz Miskiewicz" />
<person posts="1" size="2" who="(brian)" />
<person posts="1" size="2" who="(jlnance)" />
<person posts="1" size="2" who="Tony Lill" />
<person posts="1" size="2" who="(esafe)" />
<person posts="1" size="2" who="Hans Lambrechts" />
<person posts="1" size="2" who="Thomas Molina" />
<person posts="1" size="2" who="Olaf Dietsche" />
<person posts="1" size="2" who="Fedor Karpelevitch" />
<person posts="1" size="2" who="(subodh)" />
<person posts="1" size="2" who="Adam Lackorzynski" />
<person posts="1" size="2" who="Luciano Miguel Ferreira Rocha" />
<person posts="1" size="2" who="&quot;sting sting&quot;" />
<person posts="1" size="2" who="Fruhwirth Clemens" />
<person posts="1" size="2" who="Parag Warudkar" />
<person posts="1" size="2" who="Lukasz Trabinski" />
<person posts="1" size="2" who="Joe Korty" />
<person posts="1" size="2" who="dan carpenter" />
<person posts="1" size="2" who="Aaron Lehmann" />
<person posts="1" size="2" who="Yokota Hiroshi" />
<person posts="1" size="2" who="&quot;Oliver Pitzeier&quot;" />
<person posts="1" size="2" who="Jonathan Lundell" />
<person posts="1" size="2" who="Andrew Lunn" />
<person posts="1" size="2" who="Jaco Kroon" />
<person posts="1" size="2" who="Daniel Lyddy" />
<person posts="1" size="2" who="Ragnar Hojland Espinosa" />
<person posts="1" size="2" who="(admin)" />
<person posts="1" size="2" who="Stefan Rompf" />
<person posts="1" size="2" who="Matthew Trent" />
<person posts="1" size="2" who="(yiding_wang)" />
<person posts="1" size="2" who="Ducrot Bruno" />
<person posts="1" size="2" who="John Weber" />
<person posts="1" size="2" who="&quot;Florian Schirmer&quot;" />
<person posts="1" size="2" who="Rob Radez" />
<person posts="1" size="2" who="Zeno Davatz" />
<person posts="1" size="2" who="Andreas Schwab" />
<person posts="1" size="2" who="&quot;Luz Huerta&quot;" />
<person posts="1" size="2" who="Nikita Danilov" />
<person posts="1" size="2" who="David Howells" />
<person posts="1" size="2" who="JD Gray" />
<person posts="1" size="2" who="Jose Luis Domingo Lopez" />
<person posts="1" size="2" who="Timothy Miller" />
<person posts="1" size="2" who="Chris Frey" />
<person posts="1" size="2" who="Dave Dillow" />
<person posts="1" size="2" who="&quot;Dr. Michael Weller&quot;" />
<person posts="1" size="2" who="Art Haas" />
<person posts="1" size="2" who="Honne Gowda A" />
<person posts="1" size="2" who="&quot;Chris Peterson&quot;" />
<person posts="1" size="2" who="Dumitru Stama" />
<person posts="1" size="2" who="Daniel Blueman" />
<person posts="1" size="2" who="&quot;Masoodur  Rahman&quot;" />
<person posts="1" size="2" who="Bernd Petrovitsch" />
<person posts="1" size="2" who="Damian =?iso-8859-2?q?Ko=B3kowski?=" />
<person posts="1" size="2" who="Dominik Brodowski" />
<person posts="1" size="2" who="&quot;Brad Parker&quot;" />
<person posts="1" size="2" who="Kevin Puetz" />
<person posts="1" size="2" who="&quot;Thomas XB Spatzier&quot;" />
<person posts="1" size="2" who="Andy Isaacson" />
<person posts="1" size="2" who="&quot;Adrian Levi&quot;" />
<person posts="1" size="2" who="&quot;Adrian &amp; Chantal&quot;" />
<person posts="1" size="2" who="Corrin Lakeland" />
<person posts="1" size="2" who="&quot;Brad Parker&quot;" />
<person posts="1" size="2" who="Zwane Mwaikambo" />
<person posts="1" size="2" who="&quot;Paul Fulghum&quot;" />
<person posts="1" size="2" who="walt" />
<person posts="1" size="2" who="&quot;O.Sezer&quot;" />
<person posts="1" size="2" who="(postmaster)" />
<person posts="1" size="2" who="Bernhard Rosenkraenzer" />
<person posts="1" size="2" who="(virusalert)" />
<person posts="1" size="2" who="ETO" />
<person posts="1" size="2" who="Steve French" />
<person posts="1" size="2" who="Nick Sanders" />
<person posts="1" size="2" who="&quot;Ro0tSiEgE LKML&quot;" />
<person posts="1" size="2" who="Bruce Ferrell" />
<person posts="1" size="2" who="Wade" />
<person posts="1" size="2" who="RisingEagle" />
<person posts="1" size="2" who="GibsonSG" />
<person posts="1" size="2" who="&quot;Dave Gilbert (Home)&quot;" />
<person posts="1" size="2" who="&quot;Robert Seviour&quot;" />
<person posts="1" size="2" who="Carl-Daniel Hailfinger" />
<person posts="1" size="2" who="Randall Craig" />
<person posts="1" size="2" who="Tomasz Czaus" />
<person posts="1" size="2" who="Sean Neakums" />
<person posts="1" size="2" who="Marek Zachara" />
<person posts="1" size="2" who="David Nielsen" />
<person posts="1" size="2" who="(jobs)" />
<person posts="1" size="2" who="(jesses)" />
<person posts="1" size="2" who="WAVA Postmaster" />
<person posts="1" size="2" who="root" />
<person posts="1" size="2" who="&quot;=?EUC-KR?B?c3VwZXI=?=&quot;" />
<person posts="1" size="2" who="Joe Briggs" />
<person posts="1" size="2" who="fixtrin" />
<person posts="1" size="2" who="(postmaster)" />
<person posts="1" size="1" who="Raimo =?iso-8859-1?Q?Lepp=E4nen?=" />
<person posts="1" size="1" who="(ychow)" />
<person posts="1" size="1" who="(parakeet)" />
<person posts="1" size="1" who="(opinionreply)" />
<person posts="1" size="1" who=" (via the vacation program)" />
<person posts="1" size="1" who="&quot;Romi&quot;" />
<person posts="1" size="1" who="&quot;Christian Ludwig&quot;" />
<person posts="1" size="1" who="&quot;junk spam&quot;" />

</stats>

<section
  title="Linux 2.6.0-test4 Released"
  subject="Linux 2.6.0-test4"
  posts="20"
  startdate="22 Aug 2003 16:48:56 -0800"
  enddate="30 Aug 2003 01:04:11 -0800"
>
<topic>Kernel Release Announcement</topic>
<topic>Power Management: ACPI</topic>

<p>Linus Torvalds announced 2.6.0-test4, saying:</p>

<quote who="Linus Torvalds">

<p>There should be a lot of compile fixes here, along with updates for ia64,
and the (painful) move of the 'name' entry out of the "struct device" that
helps avoid unnecessary memory waste.</p>

<p>It's a lot of small stuff all over: nothing really stands out in diffstat,
except the big update of the Zoran video capture driver, and the blkmtd
driver - both updated from their respective development trees (and the ips
scsi driver, but that was due to massive whitespace fixing).</p>

<p>Normal merges with Andrew and arch maintainers (x86-64, ia64, sparc64,
arm), and AGP updates (notably the merging of the ATI IGP). And network
driver updates, ACPI and power management infrastructure.</p>

</quote>

<p>Erik Andersen posted a patch and reported:</p>

<quote who="Erik Andersen">

<p>In both 2.4 and in 2.6, error handling for bad cdrom media is wrong.
And it is my fault I'm afraid, since I botched an earlier fix for the problem
by putting the fix in the wrong spot.</p>

<p>My kids have a "Jumpstart Toddlers" cd they have long since completely
killed, which makes a great test disc.  Without this fix, the best time
projection I can get for completing a dd type sector copy is about 2 years...
Most of that is spent thrashing about in kernel space trying to re-read
sectors we already know are not correctable....  After the fix, I was able
to rip a copy the CD (or rather muddle through it getting lots of EIO errors)
in about 15 minutes.</p>

</quote>

</section>

<section
  title="Status Of ReiserFS 4"
  subject="reiser4 snapshot for August 26th."
  posts="35"
  startdate="26 Aug 2003 02:22:33 -0800"
  enddate="28 Aug 2003 10:31:20 -0800"
>
<topic>FS: ReiserFS</topic>
<topic>FS: rootfs</topic>
<topic>SMP</topic>

<mention>Felipe Alfaro Solana</mention>
<mention>Hans Reiser</mention>
<mention>Steven Cole</mention>

<p>Oleg Drokin announced:</p>

<quote who="Oleg Drokin">

<p>I have just released another reiser4 snapshot that I hope all interested
parties will try. It is released against 2.6.0-test4.  You can find it at <a
href="http://namesys.com/snapshots/2003.08.26">http://namesys.com/snapshots/2003.08.26</a>.
I include release notes below.</p>

<p>Reiser4 snapshot for 2003.08.26</p>

<p>WARNING!!! This code is experimental! WE ARE NOT KIDDING! DO NOT PUT ANY
VALUABLE DATA ON REISER4 YET!</p>

<p>Fixed some bugs. And finally reiser4 should compile on 64bit boxes
(hm. somebody try it, as I am unable to build any 2.6 kernel for ia64). Also
reiser4 should now build without debug enabled.  Important SMP bug was fixed
(only was in effect for SMP kernels on boxes with less than 3 CPUs).  There are
still some OOM problems sometimes that we are working on, but generally I hope
problems reported by various people about compile failures should be fixed now.
Readonly mounts (and hence - reiser4 as rootfs) are not supported too.</p>

<p>reiser4progs update includes some 64 bit fixes too along with other stuff.
fsck still does not work, so don't even try to run it.</p>

</quote>

<p>A couple posts down the line, Felipe Alfaro Solana said he'd run into
problems building ReiserFS as a module as opposed to building it in the
kernel binary itself; and Oleg replied, <quote who="Oleg Drokin">Building
as module is also not yet supported.</quote> Steven Cole posted a patch to
warn about this situation, but Hans Reiser said it would be better to disable
the feature entirely if it wouldn't work, rather than just give a warning.</p>

</section>

<section
  title="Some Discussion Of Binary Modules"
  subject="binary kernel drivers re. hpt370 and redhat"
  posts="6"
  startdate="27 Aug 2003 14:40:30 -0800"
  enddate="28 Aug 2003 10:32:25 -0800"
>
<topic>FS: initramfs</topic>
<topic>FS: ramfs</topic>

<p>Joe Briggs asked, <quote who="Joe Briggs">I have a client who has a raid
controller currently supported under windows, and now wants to support linux
as a bootable device.  Currently, some of their trade secrets are contained
in the driver as opposed to the controller firmware, etc., so for now they
wish to release a binary-only driver to certain beta customers.  (i.e., 1st
stage of porting is similar functionality as windows). Am I correct that in
order to boot off of this device that the driver would have to be statically
linked in vs. a module which could be distributed as a binary-only driver
keyed to the kernel.revision of the distribution's kernel?</quote> Stephen
Hemminger replied, <quote who="Stephen Hemminger">The driver could be a
module and live in initramfs.  If you can get the initial Linux image and
initramfs loaded, you would be okay.  The problem is more in the bootloader
(LILO or GRUB) would not know how to do raid. The /boot partition would
have to be on a non-raid partition.  Same problem if driver is statically
linked in the kernel.</quote> Alan Cox remarked, <quote who="Alan Cox">its
not IMHO so much trade secrets as "improving the barrier to vendor change"
8). Pretty much all of the older PATA controllers don't actually do hardware
raid but bios/driver raid - ie its the equivalent (or roughly so) of the
md layer but locks you into the vendor. The notable exception here is
the 3ware card (there are a couple of others too - Promise Supertrak100,
SX6000)</quote>. And Joe replied, <quote who="Joe Briggs">I believe that
companies will eventually see it costs less and the benefits higher to open
source their drivers.  But that is a conclusion and paradigm that they will
have to evolve to themselves, and shoving it down their throats will only
lengthen the process.  The first step is to support their hardware under
the platform (linux), and that is what I am focusing on.</quote></p>

</section>

<section
  title="Status Of CFQ Scheduler"
  subject="State of the CFQ scheduler"
  posts="6"
  startdate="28 Aug 2003 05:55:48 -0800"
  enddate="29 Aug 2003 02:48:22 -0800"
>
<topic>SMP</topic>

<mention>Felipe Alfaro Solana</mention>

<p>David Nielsen asked, <quote who="David Nielsen">What ever happened to
Jens Axboe's CFQ scheduler - as a regular users I really enjoyed the CFQ
scheduler as it made my desktop feel a bit smoother.  Is any work at all
been done to this fine piece of code or has it been dropped completely in
favor of AS ?</quote> Jens Axboe replied, <quote who="Jens Axboe">I'm glad
you enjoyed it. No CFQ hasn't been dropped, it was/is just on hold waiting
for the loadable scheduler infrastructure. The reason for that is that I
made lots of changes to that code base, not the old one that was in -mm.
It shouldn't be too hard to adapt the latest version from before -mm dropped
it and adapting to the current kernels.</quote> Felipe Alfaro Solana asked
for a patch against the current kernel version, and Jens replied, <quote
who="Jens Axboe">Alright, here's a version for 2.6.0-test4. It builds,
it survived a 128 client dbench on SMP. And that's all the testing I did,
so be careful. You need to boot with elevator=cfq to activate it.</quote>
Felipe was happy.</p>

</section>

<section
  title="New netplug Daemon To Handle Network Cable Hotplugging"
  subject="[ANNOUNCE] netplug, a daemon that handles network cables getting plugged in and out"
  posts="13"
  startdate="28 Aug 2003 13:21:52 -0800"
  enddate="03 Sep 2003 00:42:35 -0800"
>
<topic>Hot-Plugging</topic>
<topic>Ioctls</topic>
<topic>Networking</topic>

<p>Bryan O'Sullivan announced:</p>

<quote who="Bryan O'Sullivan">

<p>Netplug is a daemon that responds to network cables being plugged in or
out by bringing a network interface up or down.  This is extremely useful
for DHCP-managed systems that move around a lot, such as laptops and systems
in cluster environments.</p>

<p>For more details and download instructions, see the netplug homepage:
<a href="http://www.red-bean.com/~bos/">http://www.red-bean.com/~bos/</a></p>

</quote>

<p>Aaron Lehmann replied gratefully, <quote who="Aaron Lehmann">Thank
you, thank you, thank you. I was just thinking today how annoying
it is that whenever I boot up my laptop, dhclient runs and tries to
get an IP address on the ethernet interface until it's ^C'd. Since
I often use the Ethernet interface this is not a bad default, but
dhclient can't even realize on its own that there's no cable plugged
in.</quote> But elsewhere, J.A. Magallon asked if Bryan had known of the <a
href="http://www.stud.uni-hamburg.de/users/lennart/projects/ifplugd/">ifplugd</a>
project, which seemed to perform a similar task. Jeff Garzik replied,
<quote who="Jeff Garzik">ifplugd doesn't appear to use netlink.  Did I
miss something?  netlink is definitely the preferred way to get link
notification.  Maybe the two authors can work together to merge the best
parts of both...</quote> J. A.  replied, <quote who="J.A. Magallon">That
would be very nice, but there is still a problem.  Does netlink solve the
fact that there are cards (at least in 2.4) that do not support any detection
method?</quote> And Bryan said, <quote who="Bryan O'Sullivan">netlink doesn't
work through the ioctl interface at all.  If a card is capable of reporting
that its flags include IFF_UP or IFF_RUNNING via the netlink interface,
then netplug will work.</quote> And Stefan Rompf added, <quote who="Stefan
Rompf">even in 2.6 not all cards support link state via netlink, it requires
some updates to the driver. Maintainers should take this as a hint to add
netif_carrier_on()/_off() or mii_check_link()/mii_check_media()-calls ;-).
This does not hurt for 2.4 as these functions are already available there,
but do not create notifications in the stock kernel.</quote></p>

</section>

<section
  title="Kdb 4.3 Released"
  subject="Announce: kdb v4.3 is available for kernel 2.4.22"
  posts="1"
  startdate="29 Aug 2003 01:13:02 -0800"
>

<p>Keith Owens announced, <quote who="Keith Owens"><a
href="ftp://oss.sgi.com/projects/kdb/download/v4.3/">ftp://oss.sgi.com/projects/kdb/download/v4.3/</a>.
Current versions are kdb-v4.3-2.4.22-common-1.bz2, kdb-v4.3-2.4.22-i386-1.bz2.
Other platforms will follow as they get updated to 2.4.22.  This is just
a maintenance version to sync with kernel 2.4.22, kdb v4.4 will have more
changes.  Changelog extracts since 2.4.21.</quote></p>

</section>

<section
  title="Status And Discussion Of EFI (Extensible Firmware Interface) Support"
  subject="[UPDATED PATCH] EFI support for ia32 kernels"
  posts="16"
  startdate="29 Aug 2003 12:19:06 -0800"
  enddate="05 Sep 2003 20:42:36 -0800"
>
<topic>Assembly</topic>
<topic>BSD: FreeBSD</topic>
<topic>Disks: SCSI</topic>
<topic>PCI</topic>
<topic>Patents</topic>
<topic>Power Management: ACPI</topic>
<topic>USB</topic>

<mention>Jamie Lokier</mention>

<p>Matt Tolentino announced:</p>

<quote who="Matt Tolentino">

Attached is an updated patch against 2.6.0-test4 that enables
Extensible Firmware Interface (EFI) awareness in ia32 Linux kernels.
I've incorporated the feedback I've received since my initial posting (<a
href="http://marc.theaimsgroup.com/?l=linux-kernel&amp;m=105848983307228&amp;w=2">http://marc.theaimsgroup.com/?l=linux-kernel&amp;m=105848983307228&amp;w=2</a>)
including:

<p>

<ul>

<li>reorganized initialization code to minimize indentation changes to existing
  code path.</li>
<li>removed proc version of efivars driver - this driver has been rewritten and
  will be sent via a separate patch shortly.</li>
<li>reserve memory for memmap using bootmem allocator to ensure that EFI call
  set_virtual_address_map() functions properly.</li>

</ul>

</p>

</quote>

<p>He went on:</p>

<quote who="Matt Tolentino">

<p>I've been able to successfully boot kernels on EFI systems with this patch
using version 3.4 of the ELILO boot loader released last week by Stephane
Eranian as well as using GRUB on ia32 systems with legacy BIOS.</p>

<p>Special thanks to Bjorn for providing valuable feedback on the initial
patch.</p>

</quote>

<p>Andrew Morton asked:</p>

<quote who="Andrew Morton">

<p>Just for my edification: why does EFI exist?</p>

<blockquote>

<p>  "The EFI specification defines a new model for the interface between
   operating systems and platform firmware.  The interface consists of data
   tables that contain platform-related information, plus boot and runtime
   service calls that are available to the operating system and its loader.
   Together, these provide a standard environment for booting an operating
   system and running pre-boot applications.</p>

<p>  "The EFI specification is primarily intended for the next generation
   of IA-32 and Itanium Architecture-based computers, and is an outgrowth
   of the "Intel Boot Initiative" (IBI) program that began in 1998."</p>

</blockquote>

<p>It sounds like it's filling in some gaps in ACPI?</p>

</quote>

<p>Matt replied, <quote who="Matt Tolentino">Not really.  EFI is a broader
interface to platform firmware and the hardware that has been designed to
be generic, such that it may be implemented on any architecture and/or any
platform.  You can think of it as an interface to the traditional BIOS.
In a pure EFI environment, the device model, various defined services
and protocols, and structure negate the need for traditional BIOS calls.
For example, you would no longer call int10h to change the video modes -
instead you would call a function of a video/console protocol for the video
device.  Another example is the int15h call to get the e820 memory map is no
longer required - instead EFI provides a memory map of all usable memory in the
system, along with attributes, ranges, types, etc.  As for its relationship to
ACPI it is complementary.  The EFI specification does not rewrite or redefine
accepted standards such as ACPI.  Instead it enables this type of platform
configuration information to be obtained in a standard fashion.</quote></p>

<p>Elsewhere, Eric W. Biederman answered Andrew's question of why EFI existed.
Eric said:</p>

<quote who="Eric W. Biederman">

<p>As I have heard the story.</p>

<p>The guys at Intel were having problems getting a traditional PC style
BIOS to run on the first Itaniums, realized they had a opportunity to come
up with a cleaner firmware interface and came up with EFI.  Open Firmware
was considered but dropped because it was not compatible with ACPI, and they
did not want to dilute the momentum that had built up for ACPI.</p>

<p>And now since Intel has something moderately portable, they intend to
back port it to x86 and start using/shipping it sometime early next year.</p>

<p>What I find interesting is that I don't see it addressed how the 16bit
BIOS calls in setup.S can be bypassed on x86.  And currently while it works
to enter at the kernels 32bit entry point if you know what you are doing it
is still officially not supported.</p>

</quote>

<p>A couple posts later, he added that even though EFI was present in the
first Itaniums, <quote who="Eric W. Biederman">EFI came very late in the game.
I have talked to the Intel guys who thought it up.  And from a practical
standpoint the EFI interface is still stabilizing.</quote></p>

<p>In parallel to these comments, Matt had remarked, <quote who="Matt
Tolentino">the EFI sample implementation can be used on boxes with legacy
BIOSes and the interface is consistent with what is currently shipped on
ia64 platforms.  The intention is to have an interface to the firmware
that is portable and consistent.  For example, much of the linux loader
is shared between ia64 and x86.  Assuming add-in cards have EFI compliant
drivers, this also makes option ROM and even system BIOS upgrades easy with
EFI utilities and without the need for DOS.</quote> Eric replied, <quote
who="Eric W. Biederman">Getting EFI drivers in a byte code format would of
course be nice.  But mostly this helps the Itanium, not x86.  I can already
get standard x86 option roms.</quote> And Matt replied, <quote who="Matt
Tolentino">It would be nice.  It is especially nice for vendors because they
can reuse a single driver image for multiple architectures assuming there is
an interpreter and EFI support.</quote> At this point Linus Torvalds said:</p>

<quote who="Linus Torvalds">

<p>No. It would be a total nightmare.</p>

<p>Vendor-supplied drivers without source are going to be BUGGY.</p>

<p>They are going to be doubly buggy if they are run with a compiler that
has a buggy back-end.</p>

<p>And that back-end is going to be buggy if it's for some random bytecode that
isn't widely used except for some silly EFI thing and is tested exclusively
with just a few versions of Windows and _maybe_ occasionally on Linux.</p>

<p>Face it: firmware bytecode is a total braindamage. The only thing that
works is _source_code_ that can be fixed, and lacking that, we're better
off with a well-defined ISA that people are used to and that has stable
simple compilers.</p>

<p>In other words: x86 object code is a better choice than some random new
bytecode. It's a "bytecode" too, after all. And it's one that is stable
and runs fast on most hardware. But as long as it's some kind of binary
(and byte code is binary, don't make any mistake about it), it's going to
always be broken.</p>

<p>EFI is doing all the wrong things. Trying to fix BIOSes by being "more
generic". It's going to be a total nightmare if you go down that path.</p>

<p>What will work is:</p>

<p>

<ul>

<li>

<p>standard hardware interfaces. Instead of working on bytecode interpreters,
make the f*cking hardware definition instead, and make it SANE and PUBLIC! So
that we can write drivers that work, and that come with source so that we
can fix them when somebody has buggy hardware.</p>

<p>DO NOT MAKE ANOTHER FRIGGING BYTECODE INTERPRETER!</p>

<p>Didn't Intel learn anything from past mistakes? ACPI was supposed to be
"simple". Codswallop.</p>

<p>PCI works, because it had standard, and documented, hardware interfaces. The
interfaces aren't well specified enough to write a PCI disk driver, of course,
but they _are_ good enough to do discovery and a lot of things.</p>

<p>Intel _could_ make a "PCI disk controller interface definition", and
it will work. The way USB does actually work, and UHCI was actually a fair
standard, even if it left _way_ too much to software.</p>

</li>

<li>Source code. LinuxBIOS works today, and is a lot more flexible than EFI
will _ever_ be.</li>

<li>Compatibility. Make hardware that works with old drivers and old
BIOSes. This works. The fact that Intel forgot about that with ia-64 is not
an excuse to make _more_ mistakes.</li>

</ul>

</p>

<p>Don't screw this up. EFI is not going in the right direction.</p>

</quote>

<p>Mark Doran of Intel replied:</p>

<quote who="Mark Doran">

<p>As one of the people responsible for the EFI Specification and our
industry enabling efforts around that spec, I'd like to offer some background
that I hope will illuminate some of the issues discussed in this thread.
This is going to be a bit long...let me apologize in advance for that but I
think there's quite a bit of context here and sharing that may help people
understand why EFI works the way it does for Option ROMs.</p>

<p>In 1999 when we were first working on the EFI spec in draft form, a
number of the OEMs and IHV companies that we talked to told us that an EFI
spec without a solution for the "option ROM" problem would not be accepted
in the industry.</p>

<p>At that time, I tried to make the case that instead of propagating
the problem into the future we should focus on moving the industry to
"architectural hardware" that wouldn't even need option ROMs.  What I meant
by that was add-in cards with common register-level hardware interfaces
to allow operating systems code to carry driver and boot loader code that
would be able to work across a range of vendors' products.  Perhaps the UNDI
network card interface that Intel developed would be a good model for a start
at this approach as an example; both in terms of how to do it and the level
of traction (or lack thereof) one can expect taking this approach.</p>

<p>The trouble with the "architectural hardware" argument proved to be that
PCI is already well established and there is a vibrant industry churning
out innovative PCI cards on a regular basis.  The idea of a single interface
definition for all cards of each of the network, storage or video classes is
viewed as simply too limiting and the argument was made to us that to force
such a model would be to stifle innovation in peripherals.  So effectively the
feedback we got on "architectural hardware" was therefore along the lines of
"good idea but not practical..."</p>

<p>Faced with that and what amounts to a demand for a solution, we tried to
scope the problem.  Today's IA-32 Option ROMs are typically 16-bit, IA-32
real mode code, they must live in a magic 128k (192 on some boxes) window
below 1MB, and there are no hard and fast rules about what resources on the
machine they may or may not touch.  The reason the OEM folks asked us to
look at solving this issue set in the context of EFI is to try and improve
the real nightmares that they face every day.  The kind of thing where
you plug in an adapter card and suddenly the floppy doesn't work anymore.
The kind of thing where you plug in four SCSI controllers and it's highly
likely that you can't reach a perfectly good OS install on a drive connected
to one of those controllers because the BIOS can't shadow that much ROM code.
The kind of thing where ROM code uses I/O reads in lieu of calibrated delays
causing controllers to fail on newer, faster systems.</p>

<p>EFI's origins come from the 64-bit side of the house.  It was originally
conceived in the context of a need for a means to handle programmatic
transfer of control from the platform code (BIOS/firmware) to the OS; in
other words an abstraction for the platform to support booting shrink-wrap
OSes, installed right off the distribution CDs.  However, we also worked
hard at building a C language binding for those interfaces that would work
just as well for IA-32 or even XScale or perhaps even for non-Intel Family
processors in fact.  The idea being a piece of code written to consume EFI
services can compile unmodified and without gratuitous #ifdef's for 32-bit
or 64-bit system merely by choice of compiler.</p>

<p>In the context of option ROMs then, this approach would say that you can
write a single chunk of C language EFI driver code, your option ROM equivalent.
This code can load anywhere in the address space of the machine (EFI uses
protected mode, virtual equals physical addressing model), it can use the
full address width of the machine for data references and you can compile
it for your target machine architecture of choice.  So far so good.</p>

<p>However there are some other practical deployment issues that add-in
cards bring to bear that we also had to address.</p>

<p>These cards have a habit of traveling from machine to machine.  Customers
have a reasonable expectation that cards just work when you move them from one
system and plug them in to another.  Since the receiving system motherboard
might have no knowledge of the card you just added, how does it present devices
connected to that card as candidates for booting??  Motherboards cannot
reasonably carry code for every device a customer might choose to plug in.
Addressing that problem is what the Option ROM does for you.</p>

<p>We also tried to advocate for having the drivers/Op ROM images be separately
distributed.  Some of the IHVs liked that: just ship a floppy with the card,
much cheaper than putting NVRAM memory on card.  The OEM folks however
point out that the floppy gets lost and now the card is useless to the
customer...support calls ensue.  Thus the code needs to travel as part of
the card.</p>

<p>If a card can travel from system to system, that also means it can
cross processor architecture boundaries too - there are Itanium Family and
IA-32 family machines with PCI slots that are electrically compatible and
the expectation is that the cards work equally well in both system types.
For the Option ROM content though that presents a dilemma - what do you carry
in the ROM??  Native compiled IA-32 code and also native compiled Itanium
family code perhaps.  Well that works, the PCI spec says a ROM container
can have multiple images; we take advantage of that now to build cards that
carry a 16-bit conventional ROM and an EFI driver together and there are
also Forth images out there for SPARC and Power systems.</p>

<p>As a practical matter carrying multiple instruction set versions of the
same code gets expensive in FLASH memory terms.  Consider an EFI compiled
driver for IA-32 as the index, size: one unit.  With code size expansion,
an Itanium compiled driver is going to be three to four times that size.
Total ROM container requirement: one unit for the legacy ROM image plus one
for an EFI IA-32 driver plus three to four units for an Itanium compiled
driver image; to make the card "just work" when you plug it into a variety
of systems is starting to require a lot of FLASH on the card.  More than
the IHVs were willing to countenance in most cases for cost reasons.</p>

<p>EFI Byte Code was born of this challenge.  Its goals are pretty
straightforward: architecture neutral image, small foot print in the add-in
card ROM container and of course small footprint in the motherboard which
will have to carry an interpreter.  We also insisted that the C source for
a driver should be the same regardless of whether you build it for a native
machine instruction set or EBC.</p>

<p>We did some other things with EBC's definition too; like not including
direct I/O instructions.  That may sound odd for an environment specifically
designed for I/O devices but if you think about it, it's the motherboard
code that knows what is and is not "safe" to do by way of I/O more than the
device itself that could find itself in pretty much any old machine design.
This we believe will significantly improve the reliability of ROM code...it
relieves the add-in card Op ROM writer of any attempts to guess and assume
what the I/O environment is that the card will encounter out in the field.</p>

<p>You may ask why we didn't just use an existing definition as opposed
to making a new one.  We did actually spend quite a bit of time on that
very question.  Most alternatives would have significantly swelled the ROM
container size requirement or the motherboard support overhead requirement or
had licensing, IP or other impediments to deployment into the wider industry
that we had no practical means to resolve.  With specific reference to
why we chose not to use the IA-32 instruction set for this purpose, it was
all about the size of an interpreter for that instruction set.  To provide
compatibility 100% for the universe of real mode option ROM binaries out
there would require a comprehensive treatment of a very rich instruction
set architecture.  We could see no practical way to persuade OEMs building
systems using processors other than IA-32 to carry along that much interpreter
code in their motherboard ROM.</p>

<p>Consider the model of Alpha and FX32 as an example; FX32 would be
impractical to carry on the motherboard outside the scope of a running OS.
At one point we did have an EFI draft that included a processor binding for
Alpha at Compaq's request.  That material isn't in the final spec for reasons
that don't really relate to EFI.  Nevertheless, making an Option ROM solution
that could plausibly work on multiple CPU architectures (including ones from
outside the IA family) and before there is an OS on the box to support an
expansive interpreter loomed large in our thinking at the time. [By the by,
we remain open to adding other CPU bindings into the EFI spec should anyone
approach us with such a proposal in hand.]</p>

<p>By contrast EBC requires a small interpreter with no libraries (roughly
18k uncompressed total on IA-32 for example) and the average add-in card
ROM image size is 1.5 units relative to native IA-32 code.  And keep in
mind that using byte code for this purpose is in widespread, long time use
on other CPU architectures so we felt the technique in general was viable
based on industry experience with it.  Yes, it's a compromise but the best
balance point we have been able find to date.</p>

<p>I agree that the compiler back end for EBC will be used for small chunks
of code and relatively few of them at that.  That compiler and its back end
will by definition end up with less code-mileage on it, if you will.  I can
only say that Intel is supporting the compiler as a commercial product and we
stand behind it just as much as we do the native IA-32 and Itanium compilers.
Find a bug, let us know - we'll fix it.  We run the same tests on the EBC
compiler as we do on the native compilers and a few more besides that do
EBC torture exercises.  The compiler has been in testing for more than a
year and in release for nearly than long now.  At any rate, feedback we've
received so far doesn't seem to indicate stability problems in the compiler;
if your experience varies from that please let me know - I'd like to help
fix it for you!  Incidentally, nothing prevents someone from retargeting
GCC for this application.</p>

<p>It is with no small trepidation, given the assembled company, that I turn
to the question of Open Source as it relates to EFI and Option ROM code.
However...</p>

<p>There is nothing about the definition of the EFI spec or the driver model
associated that prevents vendors from making add-in card drivers and presenting
them in Open Source form to the community.  In fact we've specifically included
the ability to "late bind" a driver into a system that speaks EFI.  In practice
that late binding means that code that uses EFI services and that is GPL code
can be used on systems that also include EFI code that is not open source.</p>

<p>The decision on whether to make any given driver Open Source or not
therefore lies with the creator of that code.  In the case of ROM content
for an add-in card that will usually be the IHV that makes the card.</p>

<p>Now, we observe that the high-end add-in card makers often preserve their
intellectual property behind proprietary code (via binary drivers) and/or
"object models" that they implement in the ROM.  In today's lexicon that
means an INT13 service for a SCSI card or an INT10 service for a video card.
Even for Linux OS-present drivers I understand that some open source drivers
for such cards don't actually touch the metal directly for all operations
they perform - they use some abstraction between the driver and the actual
hardware, something that is carried around in the ROM.  I suspect that this
paradigm is one that will continue for some time to come.  Any change in
this approach will have to be worked with the vendors who feel commercial
pressure to protect their IP with these kinds of mechanisms.</p>

<p>The EFI spec itself is published with a simple copyright statement and
not one of Intel's "colored" NDA covers.  The sample code that you can
download from our web site is free to you and comes with what amounts to
a patent license grant so that you can implement EFI, perhaps using our
code in derivative fashion, without royalty or other concern.  We also have
support tools for folks building EFI code, like Option ROM drivers, that is
distributed under the FreeBSD license.</p>

</quote>

<p>Jamie Lokier asked about the EFI patents, and Mark replied:</p>

<quote who="Mark Doran">

<p>Actually no, there are no patents that I'm aware of that read on EFI.
We made a point of not filing any on the spec.  We told everyone we talked
to during the spec's development that we wouldn't file any so that the
spec would end up free of any IP considerations when complete.  This was a
deliberate effort to support the goal of minimizing any potential barriers
to adoption of EFI as much as possible.</p>

<p>The patent license grant is thus in some sense a double coverage
approach...you don't really need a patent license grant since there aren't
any patents that read but to reinforce that you don't need to worry about
patents we give you the grant anyway.  This helped make some corporate
entities more comfortable about implementing support for EFI.</p>

<p>In practice we have required that any feedback or contribution to the EFI
spec or code from third parties that is given to us also comes without any
IP encumbrances.  There are a couple of things that I've been offered that
I would like to have included but couldn't in the end because it would not
have been possible to continue telling folks using the EFI spec that they
can do so without concern for IP issues.</p>

</quote>

</section>

<section
  title="Documentation For /proc/stat"
  subject="[PATCH] Add documentation for /proc/stat"
  posts="3"
  startdate="30 Aug 2003 21:19:08 -0800"
  enddate="31 Aug 2003 17:18:38 -0800"
>
<topic>Version Control</topic>

<p>Bryan O'Sullivan said, <quote who="Bryan O'Sullivan">This patch adds
documentation for the contents of the /proc/stat file.  The BK version
of the patch at the URL below also instructs BK to ignore cscope database
files.</quote></p>

</section>

<section
  title="Revising BK ChangeLog Entries After Acceptance"
  subject="bitkeeper comments"
  posts="18"
  startdate="31 Aug 2003 20:15:30 -0800"
  enddate="01 Sep 2003 10:08:00 -0800"
>
<topic>Version Control</topic>

<mention>Christoph Hellwig</mention>
<mention>Jakob Oestergaard</mention>

<p>Albert Cahalan noticed that a false changelog entry ended up in
BitKeeper. He asked if it could be fixed. Larry McVoy said, <quote who="Larry
McVoy">If you want the comments changed I can do that on bkbits.net and anyone
who grabs the update from there will get the new comments.  If you want the
patch gone out of BK anyone can do that with a cset -x.</quote> Albert said
the code itself was fine, and only the comment needed to be adjusted. He said,
<quote who="Albert Cahalan">I'm OK with whatever ensures that somebody looking
back through the BitKeeper logs isn't going to come to the conclusion that I
broke something.</quote> Larry said, <quote who="Larry McVoy">Unfortunately
the checkin comments themselves are not revision controlled.  You have to
run a command on each repository that needs to be fixed, if you send me the
desired comments I'll post the command.  Then if Linus or Marcelo says do it
I'll do it on bkbits.net.  That should be good enough, the logs there are
what people tend to browse.</quote> Albert posted the comment he wanted to
see replace the original, but Christoph Hellwig objected to the whole idea
of retroactively modifying the changelog entry. He felt it was censorship,
and Larry replied, <quote who="Larry McVoy">it's not my place to make that
call.  I said "if Linus or Marcelo says do it"  specifically for the case
that there is some hanky panky going on.  On the other hand, it's perfectly
possible that the wrong comment got stuck in there and if that's the case
why shouldn't it get fixed?</quote> Close by, Geert Uytterhoeven cautioned,
<quote who="Geert Uytterhoeven">Retroactively changing a commit message may
be a dangerous precedent. While there may be legitimate reasons (E.g. plain
wrong comments or `actually this part was not written by x but by y'),
one day The Evil Empire may claim we changed the evidence of who did what.
Putting comments under revision control is another option, but may be too
deep-involving...</quote> At around this point, Linus Torvalds remarked:</p>

<quote who="Linus Torvalds">

<p>Actually, I do that all the time. In fact, it was I who asked Larry to
add the "bk comment" command in to make it easy to do so.</p>

<p>The thing is, it's hard to do after the message has already gone out into
the public - but I fix up peoples email commentary by hand both in the email
and often later after it has hit my BK tree too. I try to fix obvious typos,
and just generally make the things more readable.</p>

<p>And if the comment was wrong, then it should be fixed. Not because of
any "censorship", but because it's misleading if the comment says it fixes
something it doesn't fix - and that might make people overlook the _real_
thing the change does.</p>

</quote>

<p>Jakob Oestergaard objected (and Geert agreed) that this defeated the
revision control of the archive, making it possible for changelogs to say
one thing at one time, and another at another time, with no indication that
the first changelog version ever existed. However, at this point, the thread
petered out.</p>

</section>

<section
  title="dontdiff In The Kernel Tree"
  subject="dontdiff for 2.6.0-test4"
  posts="17"
  startdate="01 Sep 2003 06:57:27 -0800"
  enddate="01 Sep 2003 21:55:17 -0800"
>
<topic>Kernel Build System</topic>
<topic>Version Control</topic>

<mention>Herbert Poetzl</mention>
<mention>Christoph Hellwig</mention>

<p>Tigran Aivazian announced:</p>

<quote who="Tigran Aivazian">

<p>I have updated dontdiff in the usual place:</p>

<p><a
href="http://www.moses.uklinux.net/patches/dontdiff">http://www.moses.uklinux.net/patches/dontdiff</a></p>

<p>for the 2.6 kernels. Obviously this was only tested on my configuration(s)
so any additions are welcome. Just email them to me and I will add them.</p>

<p>For those who don't know what "dontdiff" is --- grep the file:</p>

<p>/usr/src/linux/Documentation/SubmittingPatches</p>

</quote>

<p>Christoph Hellwig suggested putting this in the kernel source itself,
and Tigran agreed, saying, <quote who="Tigran Aivazian">Probably a good
idea, because I hesitated whether to call this "dontdiff-2.6" and leave the
existing dontdiff for 2.4 or just switch to 2.6 (assuming it is applicable
to 2.4 as well). But if it is in the kernel tree then no need to worry about
which dontdiff matches which kernel.</quote> Jeff Garzik replied, <quote
who="Jeff Garzik">I'll throw it into 2.6.  I use dontdiff all the time :)
FWIW I use the same dontdiff for 2.4 and 2.6...</quote></p>

<p>Elsewhere, however, Sam Ravnborg said he didn't think dontdiff should go
into the kernel tree. He said, <quote who="Sam Ravnborg">What is included
in dontdiff is redundant information already known by kbuild. Effectively
dontdiff should not list any files that would not be removed during a
"make mrproper".  Instead why not use the knowledge kbuild has and implement
'make dontdiff'?  This could generate the list of files used for 'diff -X'.
I can try to hack up something during the week just to see if it looks
ok.</quote> Herbert Poetzl agreed, but Jeff objected that dontdiff <quote
who="Jeff Garzik">must know about many things that 'make mrproper' need not
care about</quote>, such as files with a '.bak' or '~' suffix, or various
version control directories used bit BitKeeper, CVS, Subversion, RCS, and
SCCS. Sam replied that 'make mrproper' already knew about all of those, and
Jeff took a look and admitted (with a smile) this was true. But Jeff added,
<quote who="Jeff Garzik">dontdiff is a file that's useful precisely because
of the form its in.  So, as something that's proven itself useful to a bunch
of people, I definitely think it has a home somewhere in Documentation/*
It need not be referenced in any way by kbuild; that's not a big deal.
The two really serve different purposes.</quote> Sam in turn discovered
he himself had been wrong to assume that dontdiff could be handled safely
by kbuild. On further inspection he found this was not necessarily true;
and concluded, <quote who="Sam Ravnborg">So I have changed my mind - do not
autogenerate it. Stuff in the dontdiff file somewhere (scripts/?).</quote></p>

</section>

<section
  title="Status Of i8xx Maintainership; Alan On Sabbatical"
  subject="Who maintains drivers/sound/i810_audio.c?"
  posts="9"
  startdate="03 Sep 2003 04:22:07 -0800"
  enddate="04 Sep 2003 09:53:02 -0800"
>
<topic>MAINTAINERS File</topic>

<mention>Alan Cox</mention>
<mention>Jeff Garzik</mention>
<mention>Andrew Morton</mention>
<mention>Marc-Christian Petersen</mention>

<p>Mehmet Ceyran found a small bug in the "Intel ICH (i8xx), SiS 7012,
NVidia nForce Audio or AMD 768/811x" driver, and wanted to report it
to the maintainer, but couldn't find anyone in the MAINTAINERS file to
match that driver. He asked what he should do, and Jeff Garzik said to
post the bug report or patch to the linux-kernel mailing list, and CC Alan
Cox. Marc-Christian Petersen confirmed that Alan was maintaining i8xx audio,
but was away on sabbatical for one year. Mehmet posted his patch and there
was some discussion, in which Alan did also participate. He was also the
second most active poster of the week (after Andrew Morton), so perhaps his
sabbatical had not yet begun.</p>

</section>

<section
  title="Code Fork In Software Suspend In 2.6-test"
  subject="swsusp: revert to 2.6.0-test3 state"
  posts="13"
  startdate="03 Sep 2003 11:04:42 -0800"
  enddate="05 Sep 2003 02:32:07 -0800"
>
<topic>Software Suspend</topic>

<mention>Brian Litzinger</mention>

<p>In the course of various threads, Pavel Machek had really blasted Patrick
Mochel for some software suspend (and other) changes that had slipped
past Pavel (the software suspend maintainer) and broken various things in
the official 2.6-test tree. In this thread, Pavel posted a patch to undo
all of Patrick's work, and Patrick replied, <quote who="Patrick Mochel">I
realize you're sore that I modified the code you maintain and unintentionally
broke. However, it does not benefit either of us for you to intentionally break
my code in return, especially considering I've since fixed the outstanding
problems in my changes.</quote> A couple of posts later, he said:</p>

<quote who="Patrick Mochel">

<p>No, you have to understand that I don't want to call software_suspend()
at all. You've made the choice not to accept the swsusp changes, so we're
forking the code. We will have competing implementations of suspend-to-disk
in the kernel.</p>

<p>You may keep the interfaces that you had to reach software_suspend(),
but you may not modify the semantics of my code to call it. At some point,
you may choose to add hooks to swsusp that abide by the calling semantics
of the PM core, so that you may use the same infrastructure.</p>

<p>Please send a patch that only removes the calls to swsusp_* from
pm_{suspend,resume}. That would be a minimal patch.</p>

</quote>

<p>Brian Litzinger was surprised to hear of such a significant code fork
so late in the game before the next stable series. Elsewhere, Pavel said to
Patrick, <quote who="Pavel Machek">I've said I want the patch reverted. I still
want that, because you changed way too quickly with too little testing. That
does not mean I'm not going to accept your patches in future. (In fact,
my plan is to  get -test3 version of swsusp back for -test5, then fix up
driver model/swsusp until we have -test3 functionality back, then start
taking your patches).  Of course, that is going to be easier with your
cooperation.</quote> Patrick replied:</p>

<quote who="Patrick Mochel">

<p>That's fine. Do what you want at your own pace, with your own code.</p>

<p>I don't think you understood my assertion of not working with you, though.
I'm not going to wait around for you to merge my patches, or take more abuse
from you. I have better things to do, and a stringent time frame in which
to do them.</p>

<p>I recommend either a) accepting my changes and fixes, and help merge Nigel's
2.4 changes into the base or b) accepting the fork, merging Nigel's changes,
and later trying to merge the two source bases.</p>

</quote>

<p>Nigel Cunningham said, <quote who="Nigel Cunningham">Okay. Since you've
both given 'comforting' replies, I'll stop getting worried, get on with
finishing the 2.4 version of 1.1 and then get the port up-to-date and
going. But I'm still not sure what to prepare patches against or who to send
them to. Hopefully you'll have that sorted by the time I'm ready to release
1.1 for 2.4.</quote> And the thread ended.</p>

</section>

<section
  title="ReiserFS/ext3 Comparison"
  subject="precise characterization of ext3 atomicity"
  posts="19"
  startdate="04 Sep 2003 06:20:57 -0800"
  enddate="05 Sep 2003 05:47:20 -0800"
>
<topic>FS: ReiserFS</topic>
<topic>FS: ext3</topic>
<topic>POSIX</topic>

<p>Hans Reiser asked:</p>

<quote who="Hans Reiser">

<p>Is it correct to say of ext3 that it guarantees and only guarantees
atomicity of writes that do not cross page boundaries?</p>

<p>I am trying to define the difference between "Atomic Reiser4" and ext3,
as it seems to be a frequently asked question, and I am thinking of saying
something like:</p>

<p>Reiser4 allows you to define a set of up to A separate arbitrary filesystem
operations (where A by default is not allowed to exceed 64) that are to
be committed to disk atomically.  Every individual filesystem operation is
atomic without the need to specify it.</p>

<p>By contrast, ext3 only guarantees the atomicity of a single write that does
not span a page boundary, and it guarantees that its internal metadata will not
be corrupted even if your applications data is corrupted after the crash.</p>

</quote>

<p>Andrew Morton confirmed that ext3 only guaranteed atomicity for writes
that did not cross page boundaries. Daniel Phillips asked if this was just
"happenstance", or was it a POSIX requirement. Andrew replied:</p>

<quote who="Andrew Morton">

<p>Happenstance.</p>

<p>It's semi-trivial to do this in ext3.  You'd open the file with O_ATOMIC
and a write() would either be completely atomic or would return -EFOO without
having written anything.</p>

<p>The thing which prevents this is the ranking order between journal_start()
and lock_page().</p>

<p>It's not trivial but also not too hard to change things so that
journal_start() can rank outside lock_page() - this would also offer some
CPU savings.</p>

<p>Can't say that I'm terribly motivated about the feature though.</p>

</quote>

<p>A couple of posts later, Daniel said to Hans, <quote who="Daniel
Phillips">More power to you for adding a transaction interface to Reiser4,
and blazing that trail.  It's totally missing as a generic api at the moment,
and needs a push.</quote></p>

<p>Back in Andrew's initial reply to Hans at the start of the thread, Andrew
also questioned Hans' statement that ext3 "guarantees that its internal
metadata will not be corrupted even if your applications data is corrupted
after the crash." Andrew replied to this, <quote who="Andrew Morton">Not
sure that I understand this.  In data=writeback mode, metadata integrity is
preserved but data writes may be lost.  In data=journal and data=ordered
modes the data and the metadata which refers to it are always in sync
on-disk.</quote> Andrew suggested a couple posts later, using the text:</p>

<blockquote>

<p>"In all journalling modes ext3 guarantees metadata consistency after
a crash.  In its data=journal and data=ordered modes ext3 also guarantees
that user data is consistent with metadata after a crash.</p>

<p>However ext3 does not provide user data atomicity guarantees beyond the
scope of a single filesystem disk block (usually 4 kilobytes).  If a single
write() spans two disk blocks it is possible that a crash partway through
the write will result in only one of those blocks appearing in the file
after recovery"</p>

</blockquote>

<p>Hans suggested in turn:</p>

<blockquote>

<p>"Ext3 guarantees that its metadata will be comitted sufficiently atomically
that after a crash it will be consistent with itself.</p>

<p>In data=journal and data=ordered modes ext3 also guarantees that the
metadata will be committed atomically with the data they point to.  However
ext3 does not provide user data atomicity guarantees beyond the scope of a
single filesystem disk block (usually 4 kilobytes).  If a single write() spans
two disk blocks it is possible that a crash partway through the write will
result in only one of those blocks appearing in the file after recovery."</p>

</blockquote>

<p>At this point other folks came into the discussion, and the thread ended
inconclusively.</p>

</section>

</kc>

