<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="294" date="02 Feb 2005 00:00:00 -0800" />

<stats posts="2201" size="12885" contrib="514" multiples="269" lastweek="172">

<person posts="201" size="1788" who="Greg KH" />
<person posts="67" size="295" who="Alan Cox" />
<person posts="65" size="422" who="Adrian Bunk" />
<person posts="39" size="514" who="Christoph Lameter" />
<person posts="37" size="186" who="Linus Torvalds" />
<person posts="37" size="131" who="Andrew Morton" />
<person posts="37" size="118" who="Andi Kleen" />
<person posts="35" size="156" who="Pavel Machek" />
<person posts="35" size="156" who="Bill Davidsen" />
<person posts="34" size="138" who="William Lee Irwin III" />
<person posts="29" size="286" who="Miklos Szeredi" />
<person posts="28" size="337" who="Jeff Dike" />
<person posts="28" size="107" who="(domen)" />
<person posts="24" size="124" who="Jesper Juhl" />
<person posts="23" size="93" who="YhLu" />
<person posts="21" size="109" who="Marcelo Tosatti" />
<person posts="19" size="110" who="Russell King" />
<person posts="19" size="87" who="Nishanth Aravamudan" />
<person posts="19" size="63" who="selvakumar nagendran" />
<person posts="18" size="82" who="&quot;Barry K. Nathan&quot;" />
<person posts="18" size="76" who="Arjan van de Ven" />
<person posts="18" size="72" who="&quot;Randy.Dunlap&quot;" />
<person posts="17" size="123" who="Chris Wright" />
<person posts="17" size="86" who="Jeff Garzik" />
<person posts="17" size="60" who="Christoph Hellwig" />
<person posts="15" size="91" who="Badari Pulavarty" />
<person posts="15" size="80" who="Anton Blanchard" />
<person posts="15" size="80" who="Roland Dreier" />
<person posts="15" size="75" who="Willy Tarreau" />
<person posts="15" size="70" who="linux-os" />
<person posts="14" size="66" who="Horst von Brand" />
<person posts="14" size="59" who="Andries Brouwer" />
<person posts="14" size="58" who="Felipe Alfaro Solana" />
<person posts="14" size="56" who="Rik van Riel" />
<person posts="14" size="51" who="Andrea Arcangeli" />
<person posts="13" size="58" who="James Nelson" />
<person posts="13" size="57" who="Nick Piggin" />
<person posts="13" size="47" who="Andi Kleen" />
<person posts="12" size="63" who="John Richard Moser" />
<person posts="12" size="48" who="Matt Mackall" />
<person posts="11" size="76" who="James Bottomley" />
<person posts="11" size="62" who="Jesse Allen" />
<person posts="11" size="43" who="Jens Axboe" />
<person posts="11" size="35" who="&quot;Bhupesh Kumar Pandey, Noida&quot;" />
<person posts="10" size="94" who="Gene Heskett" />
<person posts="10" size="39" who="Sam Ravnborg" />
<person posts="10" size="38" who="Zwane Mwaikambo" />
<person posts="10" size="37" who="Thomas Sailer" />
<person posts="9" size="47" who="&quot;Prakash K. Cheemplavam&quot;" />
<person posts="9" size="47" who="Davide Libenzi" />
<person posts="9" size="34" who="Thomas Gleixner" />
<person posts="9" size="30" who="Pavel Machek" />
<person posts="8" size="190" who="Lorenzo =?ISO-8859-1?Q?Hern=E1ndez_?=" />
<person posts="8" size="164" who="Martin Drab" />
<person posts="8" size="90" who="(hugang)" />
<person posts="8" size="75" who="David Gibson" />
<person posts="8" size="39" who="Geert Uytterhoeven" />
<person posts="8" size="37" who="Dave Jones" />
<person posts="8" size="36" who="Jon Smirl" />
<person posts="8" size="33" who="(blaisorblade_spam)" />
<person posts="8" size="27" who="Denis Vlasenko" />
<person posts="8" size="25" who="Lee Revell" />
<person posts="7" size="65" who="Jake Moilanen" />
<person posts="7" size="33" who="Bartlomiej Zolnierkiewicz" />
<person posts="7" size="29" who="Theodore Ts'o" />
<person posts="7" size="27" who="Jan Engelhardt" />
<person posts="7" size="24" who="Pierre Ossman" />
<person posts="6" size="39" who="Nigel Cunningham" />
<person posts="6" size="35" who="Liam Girdwood" />
<person posts="6" size="30" who="Nathan Lynch" />
<person posts="6" size="29" who="Roman Zippel" />
<person posts="6" size="28" who="James Cleverdon" />
<person posts="6" size="27" who="(Tim_T_Murphy)" />
<person posts="6" size="24" who="Li Shaohua" />
<person posts="6" size="22" who="&quot;David S. Miller&quot;" />
<person posts="6" size="15" who="krishna" />
<person posts="5" size="92" who="Jeremy Fitzhardinge" />
<person posts="5" size="86" who="Mike Waychison" />
<person posts="5" size="55" who="Vivek Goyal" />
<person posts="5" size="51" who="Hirokazu Takata" />
<person posts="5" size="32" who="Roseline Bonchamp" />
<person posts="5" size="31" who="David Gibson" />
<person posts="5" size="30" who="Marek Habersack" />
<person posts="5" size="30" who="Hugh Dickins" />
<person posts="5" size="22" who="Daniel Jacobowitz" />
<person posts="5" size="22" who=" (Luis R. Rodriguez)" />
<person posts="5" size="20" who="Ingo Molnar" />
<person posts="5" size="19" who="Indrek Kruusa" />
<person posts="5" size="18" who=" (Lennart Sorensen)" />
<person posts="5" size="18" who="&quot;Ing. Gianluca Alberici&quot;" />
<person posts="5" size="18" who="Laurent CARON" />
<person posts="5" size="18" who="Takashi Iwai" />
<person posts="5" size="18" who="&quot;Rafael J. Wysocki&quot;" />
<person posts="5" size="18" who="Trond Myklebust" />
<person posts="5" size="18" who="&quot;Alexander E. Patrakov&quot;" />
<person posts="5" size="18" who="Justin Piszcz" />
<person posts="5" size="15" who="Alexey Dobriyan" />
<person posts="4" size="72" who="Martin Josefsson" />
<person posts="4" size="57" who="Robert Love" />
<person posts="4" size="31" who="Paolo Ciarrocchi" />
<person posts="4" size="28" who="(Hikaru1)" />
<person posts="4" size="24" who="&quot;J.A. Magallon&quot;" />
<person posts="4" size="21" who="(tglx)" />
<person posts="4" size="19" who="Jan Kasprzak" />
<person posts="4" size="18" who="Anders Saaby" />
<person posts="4" size="18" who="David Brownell" />
<person posts="4" size="18" who="Mike Hearn" />
<person posts="4" size="17" who="Bjorn Helgaas" />
<person posts="4" size="17" who="Norbert van Nobelen" />
<person posts="4" size="16" who="Jan Harkes" />
<person posts="4" size="16" who="Jason Gaston" />
<person posts="4" size="16" who="OGAWA Hirofumi" />
<person posts="4" size="16" who="Luke Kenneth Casson Leighton" />
<person posts="4" size="16" who="Dave Airlie" />
<person posts="4" size="16" who="&quot;Robert W. Fuller&quot;" />
<person posts="4" size="16" who="(Valdis.Kletnieks)" />
<person posts="4" size="15" who="Frank Steiner" />
<person posts="4" size="15" who="John Kacur" />
<person posts="4" size="14" who="Keith Owens" />
<person posts="4" size="14" who="Ikke" />
<person posts="4" size="14" who="Max Krasnyansky" />
<person posts="4" size="14" who="Erik Mouw" />
<person posts="4" size="13" who="Bernd Petrovitsch" />
<person posts="4" size="13" who="Chris Friesen" />
<person posts="4" size="13" who="Brian Gerst" />
<person posts="4" size="12" who="Francois Romieu" />
<person posts="4" size="12" who="Lukas Hejtmanek" />
<person posts="3" size="41" who="Kyle Moffett" />
<person posts="3" size="37" who="Glendon Gross" />
<person posts="3" size="37" who="Paul Mundt" />
<person posts="3" size="34" who="utz lehmann" />
<person posts="3" size="33" who="linux lover" />
<person posts="3" size="24" who="Domen Puncer" />
<person posts="3" size="22" who="(pmeda)" />
<person posts="3" size="20" who="Sami Farin" />
<person posts="3" size="19" who="David Lang" />
<person posts="3" size="18" who="Con Kolivas" />
<person posts="3" size="16" who="(Mark_H_Johnson)" />
<person posts="3" size="16" who="Simon Kirby" />
<person posts="3" size="15" who="Richard Ems" />
<person posts="3" size="15" who="Vojtech Pavlik" />
<person posts="3" size="14" who="&quot;K.R. Foley&quot;" />
<person posts="3" size="13" who="stones" />
<person posts="3" size="13" who="Peter Osterlund" />
<person posts="3" size="13" who="Arnd Bergmann" />
<person posts="3" size="13" who="Matthew Dobson" />
<person posts="3" size="12" who="Paul Mackerras" />
<person posts="3" size="12" who="Dmitry Torokhov" />
<person posts="3" size="12" who="&quot;Richard Purdie&quot;" />
<person posts="3" size="12" who="Jim Nelson" />
<person posts="3" size="12" who="Adam Anthony" />
<person posts="3" size="12" who="Diego Calleja" />
<person posts="3" size="12" who="Alessandro Suardi" />
<person posts="3" size="12" who="Christoph Anton Mitterer" />
<person posts="3" size="11" who="Thayne Harbaugh" />
<person posts="3" size="11" who="Shakthi Kannan" />
<person posts="3" size="11" who="Jean Delvare" />
<person posts="3" size="11" who="Paulo Marques" />
<person posts="3" size="11" who="Tomasz Torcz" />
<person posts="3" size="11" who="Matthew Wilcox" />
<person posts="3" size="10" who="Terence Ripperda" />
<person posts="3" size="10" who="Daniel Gryniewicz" />
<person posts="3" size="10" who="Andreas Schwab" />
<person posts="3" size="10" who="Mikael Pettersson" />
<person posts="3" size="10" who="&quot;Miller, Mike (OS Dev)&quot;" />
<person posts="3" size="10" who="Al Viro" />
<person posts="3" size="10" who="Lethalman" />
<person posts="3" size="9" who="Soeren Sonnenburg" />
<person posts="3" size="9" who="Maciej Soltysiak" />
<person posts="3" size="9" who="Jan-Frode Myklebust" />
<person posts="3" size="9" who="sounak chakraborty" />
<person posts="3" size="9" who="Meelis Roos" />
<person posts="3" size="9" who="Cal Peake" />
<person posts="3" size="8" who="Florian Weimer" />
<person posts="3" size="8" who="Vincent Hanquez" />
<person posts="2" size="79" who="Subodh Shrivastava" />
<person posts="2" size="69" who="Limin Gu" />
<person posts="2" size="44" who="Sipos Ferenc" />
<person posts="2" size="41" who="Jiri Gaisler" />
<person posts="2" size="37" who="Brad Campbell" />
<person posts="2" size="36" who="Linas Vepstas" />
<person posts="2" size="23" who="Matthias Andree" />
<person posts="2" size="15" who="Manu Abraham" />
<person posts="2" size="13" who="Pete Zaitcev" />
<person posts="2" size="13" who="Arne Ahrend" />
<person posts="2" size="13" who="Paul Gortmaker" />
<person posts="2" size="12" who="Pavel Fedin" />
<person posts="2" size="12" who="&quot;M. Edward Borasky&quot;" />
<person posts="2" size="12" who="Damian Kolkowski" />
<person posts="2" size="11" who="Daniel Fenert" />
<person posts="2" size="11" who="Michael Werner" />
<person posts="2" size="11" who=" (Eric W. Biederman)" />
<person posts="2" size="10" who="Michael Ellerman" />
<person posts="2" size="10" who="Terry Griffin" />
<person posts="2" size="10" who="&quot;Robert White&quot;" />
<person posts="2" size="10" who="Rajsekar" />
<person posts="2" size="9" who="Kumar Gala" />
<person posts="2" size="9" who="Ananth N Mavinakayanahalli" />
<person posts="2" size="9" who="(mike.miller)" />
<person posts="2" size="9" who="Stephen Pollei" />
<person posts="2" size="9" who="Alex LIU" />
<person posts="2" size="9" who="Srihari Vijayaraghavan" />
<person posts="2" size="9" who="Ron Peterson" />
<person posts="2" size="8" who="Jan-Benedict Glaw" />
<person posts="2" size="8" who="(Mark_H_Johnson)" />
<person posts="2" size="8" who="Martin Lucina" />
<person posts="2" size="8" who="&quot;Sean&quot;" />
<person posts="2" size="8" who="David Woodhouse" />
<person posts="2" size="8" who="Dave" />
<person posts="2" size="8" who="Neil Brown" />
<person posts="2" size="8" who="Deepak Saxena" />
<person posts="2" size="8" who="Heiko Carstens" />
<person posts="2" size="8" who="&quot;Peter Kjellerstedt&quot;" />
<person posts="2" size="8" who="Lukasz Kosewski" />
<person posts="2" size="8" who="&quot;David Schwartz&quot;" />
<person posts="2" size="8" who="Heiko Carstens" />
<person posts="2" size="8" who="Mws" />
<person posts="2" size="8" who="James Bruce" />
<person posts="2" size="8" who="&quot;Bagalkote, Sreenivas&quot;" />
<person posts="2" size="8" who="YOSHIFUJI Hideaki / =?iso-2022-jp?B?GyRCNUhGIzFRTEAbKEI=?=" />
<person posts="2" size="7" who="John M Flinchbaugh" />
<person posts="2" size="7" who="DervishD" />
<person posts="2" size="7" who="Matthias-Christian Ott" />
<person posts="2" size="7" who="Paul Fulghum" />
<person posts="2" size="7" who="Michael Clark" />
<person posts="2" size="7" who="Jim Zajkowski" />
<person posts="2" size="7" who="David Howells" />
<person posts="2" size="7" who="Rahul Karnik" />
<person posts="2" size="7" who="Dmitry Torokhov" />
<person posts="2" size="7" who="David Lang" />
<person posts="2" size="7" who="Jakob Oestergaard" />
<person posts="2" size="7" who="Adam Mercer" />
<person posts="2" size="7" who="Grzegorz Kulewski" />
<person posts="2" size="7" who="&quot;Paul Rolland&quot;" />
<person posts="2" size="7" who="&quot;Siddha, Suresh B&quot;" />
<person posts="2" size="7" who="Mark Nipper" />
<person posts="2" size="7" who="&quot;Stuart MacDonald&quot;" />
<person posts="2" size="7" who="Lion Vollnhals" />
<person posts="2" size="7" who="Norbert van Nobelen" />
<person posts="2" size="7" who="Itsuro Oda" />
<person posts="2" size="7" who="Michal Feix" />
<person posts="2" size="7" who="Ingo Oeser" />
<person posts="2" size="7" who="Andre Eisenbach" />
<person posts="2" size="7" who="Slade Maurer" />
<person posts="2" size="7" who="Andrey Melnikoff" />
<person posts="2" size="7" who="(jarausch)" />
<person posts="2" size="7" who="Rolf Eike Beer" />
<person posts="2" size="6" who="Johannes Stezenbach" />
<person posts="2" size="6" who="Andrew Walrond" />
<person posts="2" size="6" who="Peter Daum" />
<person posts="2" size="6" who="Brice Goglin" />
<person posts="2" size="6" who="&quot;Ville Hallik&quot;" />
<person posts="2" size="6" who="Ed Tomlinson" />
<person posts="2" size="6" who="Con Kolivas" />
<person posts="2" size="6" who="Michal Schmidt" />
<person posts="2" size="6" who="Jesse Barnes" />
<person posts="2" size="6" who="Yoichi Yuasa" />
<person posts="2" size="6" who="Christoph Hellwig" />
<person posts="2" size="6" who="Bernd Eckenfels" />
<person posts="2" size="6" who="Raphael Jacquot" />
<person posts="2" size="6" who="cranium2003" />
<person posts="2" size="6" who="Tom Rini" />
<person posts="2" size="6" who="Wakko Warner" />
<person posts="2" size="6" who="Bodo Eggert" />
<person posts="2" size="5" who="Phy Prabab" />
<person posts="2" size="5" who="Marco Cipullo" />
<person posts="2" size="5" who="&quot;Miquel van Smoorenburg&quot;" />
<person posts="2" size="5" who="&quot;J. Bruce Fields&quot;" />
<person posts="2" size="4" who="(Andries.Brouwer)" />
<person posts="1" size="81" who="&quot;Trade Electronics&quot;" />
<person posts="1" size="66" who="Jaroslav Kysela" />
<person posts="1" size="47" who="Bartlomiej Zolnierkiewicz" />
<person posts="1" size="44" who="Kylene Hall" />
<person posts="1" size="37" who=" (Tomasz Wasiak)" />
<person posts="1" size="33" who="Erik Jacobson" />
<person posts="1" size="26" who="=?utf-8?q?Pawe=C5=82_Sikora?=" />
<person posts="1" size="18" who="Jurriaan" />
<person posts="1" size="18" who="Michael Ryan" />
<person posts="1" size="18" who="Jules Villard" />
<person posts="1" size="16" who="Ed L Cashin" />
<person posts="1" size="16" who="&quot;Marcos D. Marado Torres&quot;" />
<person posts="1" size="13" who="L A Walsh" />
<person posts="1" size="11" who="Joel Cant" />
<person posts="1" size="11" who="Mauricio Lin" />
<person posts="1" size="9" who="mama Smurf" />
<person posts="1" size="9" who="Praedor Atrebates" />
<person posts="1" size="8" who="Lawrence Walton" />
<person posts="1" size="8" who="Robin Holt" />
<person posts="1" size="8" who="Jesse Barnes" />
<person posts="1" size="8" who="Ryan Anderson" />
<person posts="1" size="8" who="&quot;L. A. Walsh&quot;" />
<person posts="1" size="7" who="Nicholas Lee" />
<person posts="1" size="7" who="Olaf Dietsche" />
<person posts="1" size="6" who="Olaf Titz" />
<person posts="1" size="6" who="Simon Raven / Eric =?utf-8?B?Uy4gQ8O0dMOp?=" />
<person posts="1" size="6" who="Ravikiran G Thirumalai" />
<person posts="1" size="6" who="Doug McLain" />
<person posts="1" size="6" who="Vincent ETIENNE" />
<person posts="1" size="5" who="Kaigai Kohei" />
<person posts="1" size="5" who="Maneesh Soni" />
<person posts="1" size="5" who="Stian Jordet" />
<person posts="1" size="5" who="Niki Rahimi" />
<person posts="1" size="5" who="&quot;Jeffrey E. Hundstad&quot;" />
<person posts="1" size="5" who="christos gentsis" />
<person posts="1" size="5" who="Paolo =?utf-8?b?XCdCbGFpc29yYmxhZGVcJw==?= Giarrusso" />
<person posts="1" size="5" who="Athanasius" />
<person posts="1" size="5" who="&quot;Guy&quot;" />
<person posts="1" size="5" who="Marc-Christian Petersen" />
<person posts="1" size="5" who="Nish Aravamudan" />
<person posts="1" size="5" who="Jan Spitalnik" />
<person posts="1" size="5" who="&quot;Piszcz, Justin Michael&quot;" />
<person posts="1" size="5" who="Scott Laird" />
<person posts="1" size="5" who="Park Lee" />
<person posts="1" size="5" who="Miquel Vidal" />
<person posts="1" size="5" who="Paul" />
<person posts="1" size="4" who="&quot;Stephen J. Gowdy&quot;" />
<person posts="1" size="4" who="George Georgalis" />
<person posts="1" size="4" who="Mike Hardy" />
<person posts="1" size="4" who="&quot;Michael S. Tsirkin&quot;" />
<person posts="1" size="4" who="Michelle Konzack" />
<person posts="1" size="4" who="Peter Martuccelli" />
<person posts="1" size="4" who="Keith Owens" />
<person posts="1" size="4" who="Olof Johansson" />
<person posts="1" size="4" who="Joe Krahn" />
<person posts="1" size="4" who="Joel Jaeggli" />
<person posts="1" size="4" who="&quot;Promoters Flash&quot;" />
<person posts="1" size="4" who="&quot;Patrick J. LoPresti&quot;" />
<person posts="1" size="4" who="Justin Thiessen" />
<person posts="1" size="4" who="tsunamivictims" />
<person posts="1" size="4" who="=?iso-8859-2?q?Pawe=B3_Sikora?=" />
<person posts="1" size="4" who="Kronos" />
<person posts="1" size="4" who="Olaf Hering" />
<person posts="1" size="4" who="Roland Rosenfeld" />
<person posts="1" size="4" who="&quot;&quot;" />
<person posts="1" size="4" who="Sasa Ostrouska" />
<person posts="1" size="4" who=" (Marcel Sebek)" />
<person posts="1" size="4" who="Steven Rostedt" />
<person posts="1" size="4" who="Robert Hardy" />
<person posts="1" size="4" who="Greg Ungerer" />
<person posts="1" size="4" who="Steve French" />
<person posts="1" size="4" who="Miles Bader" />
<person posts="1" size="4" who="Helge Hafting" />
<person posts="1" size="4" who="Len Brown" />
<person posts="1" size="4" who="Thomas Graf" />
<person posts="1" size="4" who="Dave Hansen" />
<person posts="1" size="4" who="Nico Schottelius" />
<person posts="1" size="4" who="Andreas Hartmann" />
<person posts="1" size="4" who="&quot;Dr. David Alan Gilbert&quot;" />
<person posts="1" size="4" who="Miles Bader" />
<person posts="1" size="4" who="&quot;Jack O'Quin&quot;" />
<person posts="1" size="4" who="Adam Heath" />
<person posts="1" size="4" who="&quot;Sujeet Kumar&quot;" />
<person posts="1" size="4" who="&quot;Patrick J. LoPresti&quot;" />
<person posts="1" size="4" who="Christopher Swingley" />
<person posts="1" size="4" who="Suparna Bhattacharya" />
<person posts="1" size="4" who="Steffen Klassert" />
<person posts="1" size="4" who="Nicolas Mailhot" />
<person posts="1" size="4" who="&quot;Jonas Svensson&quot;" />
<person posts="1" size="4" who="(marvin24)" />
<person posts="1" size="4" who="&quot;Andrey Klochko&quot;" />
<person posts="1" size="4" who="Bastian Blank" />
<person posts="1" size="4" who="Ray Bryant" />
<person posts="1" size="4" who="Martin Waitz" />
<person posts="1" size="4" who="Herbert Poetzl" />
<person posts="1" size="4" who="Marty Ridgeway" />
<person posts="1" size="4" who="Lincoln Dale" />
<person posts="1" size="4" who="Steve Hill" />
<person posts="1" size="4" who="Harald Dunkel" />
<person posts="1" size="4" who="&quot;Li, Shaohua&quot;" />
<person posts="1" size="4" who="&quot;Fao, Sean&quot;" />
<person posts="1" size="3" who="Gerald Stuhrberg" />
<person posts="1" size="3" who="Marc Lehmann" />
<person posts="1" size="3" who="Mathieu Segaud" />
<person posts="1" size="3" who="Jes Sorensen" />
<person posts="1" size="3" who="Margus Eha" />
<person posts="1" size="3" who="Paul Jakma" />
<person posts="1" size="3" who="Adrian von Bidder" />
<person posts="1" size="3" who="Ian Kent" />
<person posts="1" size="3" who="&quot;Mukker, Atul&quot;" />
<person posts="1" size="3" who="Phil Dibowitz" />
<person posts="1" size="3" who="Eduard Bloch" />
<person posts="1" size="3" who="(Tomasz.Wasiak)" />
<person posts="1" size="3" who="Peter Williams" />
<person posts="1" size="3" who="Kevin Hilman" />
<person posts="1" size="3" who="Anton Altaparmakov" />
<person posts="1" size="3" who="&quot;Petr Vandrovec&quot;" />
<person posts="1" size="3" who="Dan Dennedy" />
<person posts="1" size="3" who="&quot;Stephen Warren&quot;" />
<person posts="1" size="3" who="Miquel van Smoorenburg" />
<person posts="1" size="3" who="Hans-Frieder Vogt" />
<person posts="1" size="3" who="Rusty Russell" />
<person posts="1" size="3" who="=?ISO-8859-15?Q?Ram=F3n_Rey_Vicente?=" />
<person posts="1" size="3" who="&quot;Kevin P. Fleming&quot;" />
<person posts="1" size="3" who="Nathan Scott" />
<person posts="1" size="3" who="=?iso-8859-1?Q?Carlos_Augusto_Falc=E3o_da_Silva?=" />
<person posts="1" size="3" who="Ingo Oeser" />
<person posts="1" size="3" who="&quot;Jeff V. Merkey&quot;" />
<person posts="1" size="3" who="Xiaowei Yang" />
<person posts="1" size="3" who="Andreas Schnaiter" />
<person posts="1" size="3" who="muzi li" />
<person posts="1" size="3" who="Chris Wedgwood" />
<person posts="1" size="3" who="Nikola Ciprich" />
<person posts="1" size="3" who="Richard Henderson" />
<person posts="1" size="3" who="Alban Crequy" />
<person posts="1" size="3" who="Andreas Steinmetz" />
<person posts="1" size="3" who="&quot;John W. Linville&quot;" />
<person posts="1" size="3" who="&quot;Nguyen, Tom L&quot;" />
<person posts="1" size="3" who="Tim Bird" />
<person posts="1" size="3" who="Willem Riede" />
<person posts="1" size="3" who="Neil Horman" />
<person posts="1" size="3" who="Jan Kara" />
<person posts="1" size="3" who="Matthew Trent" />
<person posts="1" size="3" who="Diego Calleja" />
<person posts="1" size="3" who="Rajsekar" />
<person posts="1" size="3" who="Olaf Kirch" />
<person posts="1" size="3" who="Alexandre Julliard" />
<person posts="1" size="3" who="Oliver Neukum" />
<person posts="1" size="3" who="David Meybohm" />
<person posts="1" size="3" who="=?ISO-8859-1?Q?H=E5kan?= Lindqvist" />
<person posts="1" size="3" who="Enrico Scholz" />
<person posts="1" size="3" who="Coywolf Qi Hunt" />
<person posts="1" size="3" who="jago25_98" />
<person posts="1" size="3" who="Matt Domsch" />
<person posts="1" size="3" who="Oleg Nesterov" />
<person posts="1" size="3" who="Vasil Kolev" />
<person posts="1" size="3" who="(eme)" />
<person posts="1" size="3" who="Mark Williamson" />
<person posts="1" size="3" who="peto" />
<person posts="1" size="3" who="Aaron Lehmann" />
<person posts="1" size="3" who="&quot;Matthias Urlichs&quot;" />
<person posts="1" size="3" who="George Anzinger" />
<person posts="1" size="3" who="john stultz" />
<person posts="1" size="3" who="Adam Sampson" />
<person posts="1" size="3" who="JustFillBug" />
<person posts="1" size="3" who="Nicolas Michaux" />
<person posts="1" size="3" who="&quot;David Blomberg&quot;" />
<person posts="1" size="3" who="Joseph Fannin" />
<person posts="1" size="3" who="Kasper Sandberg" />
<person posts="1" size="3" who="Frank van Maarseveen" />
<person posts="1" size="3" who="Antonio de Candia" />
<person posts="1" size="3" who="root" />
<person posts="1" size="3" who="&quot;Mark M. Hoffman&quot;" />
<person posts="1" size="3" who="&quot;Andriy Korud&quot;" />
<person posts="1" size="3" who="&quot;Antonino A. Daplas&quot;" />
<person posts="1" size="3" who="Henrik Persson" />
<person posts="1" size="3" who="jerome lacoste" />
<person posts="1" size="3" who="Liam Girdwood" />
<person posts="1" size="3" who="Mikado" />
<person posts="1" size="3" who="Chuck Ebbert" />
<person posts="1" size="3" who="Daniel Robitaille" />
<person posts="1" size="3" who="=?ISO-8859-1?Q?=20=22CEPB=E9C=E3EHTP?= (MOCKBA) 1O9~787O&quot;" />
<person posts="1" size="3" who="Sumit Narayan" />
<person posts="1" size="3" who="JustMan" />
<person posts="1" size="3" who="Tim Hockin" />
<person posts="1" size="3" who=" (Pedro Larroy)" />
<person posts="1" size="3" who="Geoff Levand" />
<person posts="1" size="3" who="jmerkey" />
<person posts="1" size="3" who="Andre Tomt" />
<person posts="1" size="3" who="Mike Werner" />
<person posts="1" size="3" who="Prarit Bhargava" />
<person posts="1" size="3" who="Clemens Buchacher" />
<person posts="1" size="3" who="Gerd Knorr" />
<person posts="1" size="3" who="Esben Stien" />
<person posts="1" size="3" who="Ricky Beam" />
<person posts="1" size="3" who="(autoreply)" />
<person posts="1" size="3" who="&quot;Luck, Tony&quot;" />
<person posts="1" size="3" who=" (David Wagner)" />
<person posts="1" size="3" who="Benjamin Herrenschmidt" />
<person posts="1" size="3" who="Mikael Pettersson" />
<person posts="1" size="3" who="Stephen Hemminger" />
<person posts="1" size="3" who="Bernd Eckenfels" />
<person posts="1" size="3" who="Emmanuel Fleury" />
<person posts="1" size="3" who="Ondrej Zary" />
<person posts="1" size="3" who="Dave Airlie" />
<person posts="1" size="3" who="Ian Molton" />
<person posts="1" size="3" who="Aaron Gyes" />
<person posts="1" size="3" who="Martin Hicks" />
<person posts="1" size="2" who="Marc Ballarin" />
<person posts="1" size="2" who="Lukasz Trabinski" />
<person posts="1" size="2" who="&quot;allen&quot;" />
<person posts="1" size="2" who="Nick Sanders" />
<person posts="1" size="2" who="&quot;Artem S. Tashkinov&quot;" />
<person posts="1" size="2" who="Krzysiek Pawlik" />
<person posts="1" size="2" who="Steve G" />
<person posts="1" size="2" who="Mudeem Iqbal" />
<person posts="1" size="2" who="Mathieu Fluhr" />
<person posts="1" size="2" who="&quot;hard__ware&quot;" />
<person posts="1" size="2" who="&quot;Frank Denis \(Jedi/Sector One\)&quot;" />
<person posts="1" size="2" who="&quot;Reynolds, Terry (Contractor-SIMTECH)&quot;" />
<person posts="1" size="2" who="Bernhard Rosenkraenzer" />
<person posts="1" size="2" who="Dan Aloni" />
<person posts="1" size="2" who="&quot;prem.de.ms&quot;" />
<person posts="1" size="2" who="Ralf Baechle" />
<person posts="1" size="2" who="&quot;Breno Silva Pinto&quot;" />
<person posts="1" size="2" who="Brian King" />
<person posts="1" size="2" who="Zhonglin Zhang" />
<person posts="1" size="2" who="Mario Vanoni" />
<person posts="1" size="2" who="Magnus Damm" />
<person posts="1" size="2" who="walt" />
<person posts="1" size="2" who="&quot;Alan Curry&quot;" />
<person posts="1" size="2" who="Athar Hameed" />
<person posts="1" size="2" who="jesse" />
<person posts="1" size="2" who="Eyal Lebedinsky" />
<person posts="1" size="2" who="&quot;Daniel Kirsten&quot;" />
<person posts="1" size="2" who="Pete Clements" />
<person posts="1" size="2" who="matt" />
<person posts="1" size="2" who="Matthew Garrett" />
<person posts="1" size="2" who="Chris Lingard" />
<person posts="1" size="2" who="Patrick Mau" />
<person posts="1" size="2" who="Shawn Starr" />
<person posts="1" size="2" who="Alejandro Bonilla" />
<person posts="1" size="2" who="Harald Mehlem" />
<person posts="1" size="2" who="Prasanna Meda" />

</stats>

<section
  title="SATA Support For Intel ICH7 Under 2.4 And 2.6"
  subject="[PATCH] SATA support for Intel ICH7 - 2.6.10 - repost"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/96aece414b58f510"
  posts="2"
  startdate="30 Dec 2004 06:16:11 -0800"
  enddate="06 Jan 2005 18:15:53 -0800"
>
<topic>Serial ATA</topic>

<mention>Jeff Garzik</mention>

<p>Jason Gaston said, <quote who="Jason Gaston">This patch adds the Intel ICH7
DID's to the ata_piix.c SATA driver, ahci.c SATA AHCI driver and quirks.c
for ICH7 SATA support.  If acceptable, please apply.</quote> Jeff Garzik
applied this to his trees, for ultimate inclusion in 2.4 and 2.6.</p>

</section>

<section
  title="Some Debate On The Development Model"
  subject="starting with 2.7"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/530d3b3086cee741"
  posts="222"
  startdate="02 Jan 2005 12:03:32 -0800"
  enddate="11 Jan 2005 11:59:20 -0800"
>
<topic>Backward Compatibility</topic>
<topic>Big Memory Support</topic>
<topic>Bug Tracking</topic>
<topic>FS: NFS</topic>
<topic>FS: devfs</topic>
<topic>Feature Freeze</topic>
<topic>Microsoft</topic>
<topic>Ottawa Linux Symposium</topic>
<topic>Power Management: ACPI</topic>
<topic>Sound: OSS</topic>
<topic>Version Control</topic>

<mention>Len Brown</mention>
<mention>Rik van Riel</mention>
<mention>Maciej Soltysiak</mention>
<mention>Andrew Morton</mention>

<p>Maciej Soltysiak asked when the 2.6 tree would fork into 2.7, so folks
could start submitting "experimental code"; and a huge discussion ensued.
William Lee Irwin III replied:</p>

<quote who="William Lee Irwin III">

<p>I have a plan to never ever stop experimental code, which is to actually
move on the 2.6.x.y strategy if no one else does and these kinds of complaints
remain persistent and become more widespread.</p>

<p>There is a standard. Breaking things and hoping someone cleans up later
doesn't work. So it has to be stable all the time anyway, and this is one
of the observations upon which the "2.6 forever" theme is based. Frozen
"minimal fix trees" for the benefit of those terrified of new working code (or
alternatively, the astoundingly risk-averse) are a relatively straightforward
theme, which kernel maintainers should be fully able to faithfully develop.</p>

</quote>

<p>Maciej said he liked the 2.6.x.y idea, but he clarified that his question
really pertained to whether there was a stock-pile of really invasive
changes building up; and if so when would the 2.7 branch kick-off with
these changes.</p>

<p>Andries Brouwer came back to William's initial reply, saying:</p>

<quote who="Andries Brouwer">

<p>You are an optimist. I think reality is different.</p>

<p>You change some stuff. The bad mistakes are discovered very soon.
Some subtler things or some things that occur only in special configurations
or under special conditions or just with very low probability may not be
noticed until much later.</p>

<p>So, your changes have a wake behind them that is wide the first few days
and becomes thinner and thinner over time. Nontrivial changes may have bugs
discovered after two or three years.</p>

<p>If a kernel is set apart and called "stable", then it is not, but it will
become more and more stable over time, until after two or three years only
very few unknown problems are encountered.</p>

<p>If you come with a new kernel every month, then you get the stability that
the "stable" kernel has after less than a month, which is not particularly
stable.</p>

</quote>

<p>Rik van Riel agreed with this, pointing out that some bugs, such as those
involving databases with large data-sets, could take years to fully manifest
themselves.</p>

<p>But William said to Andries, <quote who="William Lee Irwin III">This is
not optimism. This is experience. Every ``stable'' kernel I've seen is a
pile of incredibly stale code where vi'ing any file in it instantly reveals
numerous months or years old bugs fixed upstream.  What is gained in terms
of reducing the risk of regressions is more than lost by the loss of critical
examination and by a long longshot.</quote> Adrian Bunk replied:</p>

<quote who="Adrian Bunk">

<p>The main advantage with stable kernels in the good old days (tm) when
4 and 6 were even numbers was that you knew if something didn't work, and
upgrading to a new kernel inside this stable kernel series had a relatively
low risk of new breakages. This meant one big migration every few years and
relatively easy upgrades between stable series kernels.</p>

<p>Nowadays in 2.6, every new 2.6 kernel has several regressions compared to
the previous one, and additionally obsolete but used code like ipchains and
devfs is scheduled for removal making upgrades even harder for many users.</p>

<p>There's the point that most users should use distribution kernels, but
consider e.g. that there are poor souls with new hardware not supported by the
3 years old 2.4.18 kernel in the stable part of your Debian distribution.</p>

</quote>

<p>Dr. David Alan Gilbert replied:</p>

<quote who="Dr. David Alan Gilbert">

<p>I have always found the stable series useful for two reasons:</p>

<p>

<ol>

<li>It encourages me to test the kernel; if I have a kernel that is generally
thought to be stable then I will try it on my home machine and report problems
- this lets the kernel get tested on a wide range of hardware and situations;
if there is no kernel that is liable to be stable changes will get much less
testing on a smaller range of hardware.</li>

<li>If I have a bug in a vendor kernel everyone just tells me to go and
speak to the vendor - so at least having a stable base to go back to can
let me report a bug that isn't due to any vendors patches.</li>

<li>In some cases the commercial vendors don't seem to release source to
some of the kernels except to people who have bought the packages, so those
vendor kernel fixes aren't 'publically' visible.</li>

</ol>

</p>

<p>I think (1) is very important - getting large numbers of people to test
OSS is its greatest asset.</p>

</quote>

<p>L. A. Walsh said:</p>

<quote who="L. A. Walsh">

<p>I don't know about #3 below, but #1 and #2 are certainly true.  I always
preferred to run a vanilla stable kernel as I did not trust the vendors'
kernels because their patches were not as well eyed as the vanilla kernel.
I prefer to compile a kernel for my specific machines, some of which are
old and do better with a hand-configured kernel rather than a Microsoftian
monolith that is compiled with all possible options as modules.</p>

<p>I have one old laptop that sound just doesn't work on no matter what the
settings -- may be failed hardware, but darned if I can't seem to easily
stop the loading of sound related modules as hardware is probed by automatic
hardware probing on each bootup, and the loading of sound modules by GUI
dependencies on a memory constrained system.</p>

<p>With each new kernel release, I wonder if it will be satisfactory to use
for a new, base-line, stable vanilla kernel, but post release comments seem
to prove otherwise.</p>

<p>It seems that some developers have the opinion that the end-user base no
longer is their problem or audience and that the distros will patch all the
little boo-boo's in each unstable 2.6 release.  Well, that's just plain asking
for problems.  Just in SuSE's previous release of 9.1, it wouldn't boot up,
for update, on any system that used xfs disks.  Redhat has officially dropped
support for end-user distros, that leaves...who looking after end users?
Debian, Mandrake?</p>

<p>From what I've read here, stable Debian, it seems, is in the 2.4 series.
I don't know what Mandrake is up to, but I don't want to have to be jumping
distros because my distro maker has screwed up the kernel with one of
their patches.  I also wouldn't want to give up reporting kernel bugs
directly to developers as I would if I am using a non-vanilla, or worse,
some tainted module.</p>

<p>However, all that being said, there would still be the choosing of
someone, steady and capable, of holding on to the stable release and being
it's gate-keeper.  It seems like it would become quite a chore to decide
what code is let into the stable version.  It's also considered by many to
be "less" fun, not only to "manage the stable distro", but backport code
into the previous distro.  Maybe no one _qualified_, wanted to manage a
stable release.  It takes time and possibly enough time to qualify as a
full-time job.  It takes a special person to find gainful employment as a
vendor-neutral kernel maintainer.  The alternative is to try to work 2 jobs
where, in programming, each job might "like" to have 60-80 hours of attention
per week.  That's a demanding sacrifice as well.</p>

<p>It may be the case that no one at the last closed door kernel developer
meeting wanted to undertake the care of a stable kernel.  No volunteers...no
kernel.  There is less "wiggle room" in the average, mature, developer's
schedule with the advent of easy outsourcing to cheaper labor that doesn't
come from societies that breed independence and nurture talented, more
mature, or eccentric developers that love spending spare cycles working on
Open Source code.</p>

<p>Nevertheless, it would be nice to see a no-new-features, stable series spun
off from these development kernels, maybe .4th number releases, like 2.6.10
also becomes a 2.6.10.0 that starts a 2.6.10.1, then 2.6.10.2, etc...with
iteritive bug fixes to the same kernel and no new features in such a branch,
it might become stable enough for users to have confidence installing them
on their desktop or stable machines.</p>

<p>It wouldn't have to be months upon months of diverging code, as jumps
to a new stable base can be started upon any fairly stable development
kernel, say 2.6.10 w/e100 fixed, tracing fixed, the slab bug fix, and the
capabilities bugs fixed going into a 2.6.10.1 that has no new features or old
features removed.  Serious bug fixes after that could go into a 2.6.10.2, etc.
Such point releases would be easier to manage and only be updated/maintained
as long as someone was interested enough to do it.</p>

<p>The same process would be applied to a future dev-kernel that appears to
be mostly stable after some number of weeks of alpha testing.  It may be the
case that a given furture dev-kernel has no stable branch off of it because
it either a) didn't need one, or b) was too far from stable to start one.</p>

<p>Anyway, just a thought for having something of the old with out as much
of a headache of kernels that diverge for a year or more before getting
sync'ed up.</p>

</quote>

<p>Among other comments, Bill Davidsen remarked on Linda's idea about forking
off a new stable series from any reasonably stable development kernel. Bill
said that Andrew Morton was the only one who could accurately guage how
good vendor fixes were, <quote who="Bill Davidsen">but I suspect that the
kernel is moving too fast and vendors "pick one" and stabilize that, by
which time the kernel.org is generations down the road. It's possible that
some fixes are then rediffed against the current kernel and fed, but I have
zero information on that happening or not.</quote> William replied:</p>

<quote who="William Lee Irwin III">

<p>It does happen. I can't give a good estimate of how often. Someone at
a distro may be able to help here, though it's unclear what this specific
point is useful for.</p>

<p>What is a useful observation is that the 2.6-style development model
is not in use in these instances, which instead use the older "frozen"
model. This means that using frozen models in mainline is redundant. The
function and service are available elsewhere and numerous simultaneously
frozen trees guarantees no forward progress during such syzygys.</p>

</quote>

<p>Dave Jones replied:</p>

<quote who="Dave Jones">

<p>When we shipped Fedora Core 3, we drew a line in the sand, and decided
that 2.6.9 was the kernel we were going to ship with.  It happened to coincide
nicely with the final release date, and everyone was happy.</p>

<p>Post release, the myriad of users filled RH bugzilla diligently with their
many reports of interesting failures.  Upstream had now started charging
ahead with what was to be 2.6.10.</p>

<p>The delta between 2.6.9 -> 2.6.10 was around 4000 changesets.  Cherry
picking csets to backport to 2.6.9 at this rate of change is nigh on
impossible. You /will/ miss stuff.  In the absense of a 2.6.9.1, we chose to
use Alan's -ac patches as a base to pick up most of the interesting meat,
and then cherry pick anything else which people had noticed go past, or in
some cases, after investigation into a bugreport.</p>

<p>So now we're at our 2.6.9-ac+a few dozen 2.6.10 csets and all is happy
with the world. Except for the regressions.  As an example, folks upgrading
from Fedora core 2, with its 2.6.8 kernel found that ACPI no longer switched
off their machines for example. Much investigation went into trying to pin
this down. Kudos to Len Brown and team for spending many an hour staring
into bug reports on this issue, but ultimately the cause was never found.
It was noted by several of our users seeing this problem that 2.6.10 no longer
exhibits this flaw.  Yet our 2.6.9-ac+backports+every-2.6.10-acpi-cset also
was broken.  It's likely Fedora will get a 2.6.10 based update before the
fault is ever really found for a 2.6.9 backport.</p>

<p>This is just one example of a regression that crept in unnoticed, and got
fixed almost by accident. (If it was intentionally fixed, we'd know which
patches we needed to backport 8-)</p>

<p>For distro kernels to be the 'stable' branch, we *rely* on help from
various subsystem maintainers to continue to bugfix old kernels, despite it
being unsexy.  I admit it's painful, and given the option, replying "just
use 2.6.10-bk6" is a much easier alternative, but with thousands of changes
going into tree each month, it's not feasable for a distro to ship updates
on that basis without something happening to deal with regressions.</p>

<p>As for stuff going back upstream.. You may be surprised how many bugs our
2.6.9-ac-many-backports hybrid has turned up which turned out to be just as
relevant on 2.6.10 Here's the patchcount in our current trees..</p>

<p>Fedora Core 2:     245<br />
Fedora Core 3:      63<br />
Rawhide:            76</p>

<p>FC2 is our 2.6.9 hybrid (the fc3 kernel got backport to fc2 as an update),
FC3 is a rebase to 2.6.10-ac2.  rawhide (FC4-to-be) is 2.6.10-bk6.</p>

<p>Note we still have 63 patches in FC3. Out of those, just over a dozen
are 'features' that we added. The majority of the rest are real bugfixes,
currently languishing in out-of-tree repositories for projects like NFS,
s390, e1000 updates etc..  Note also that when FC3 first shipped, before
we started backporting 2.6.10 bits, the patchcount was around 40 or so,
so in the 2.6.9->2.6.10 rebase, we 'grew' around 13 patches.  Each time
I rebase to a new upstream, I want to get back to (or better than) the
original patchcount where possible.  When this doesn't happen, it means
we're accumulating stuff that isn't making its way upstream fast enough.</p>

<p>So, of those 182 patches we dropped in our 2.6.10 rebase..  Some of them
were upstream backports, but some of them were patches we pushed upstream
that we now get to drop on a rebase.  So the push/pull ecosystem is working
out pretty well in this regard Whilst I'd like to get even more of this
stuff upstream, it's the job of those out-of-tree pool maintainers to push
their work, not mine.</p>

</quote>

<p>That subthread skewed off into a discussion of binary modules, but
elsewhere, Bill replied to Adrian's remark about the difficulty of upgrading
in the face of things like ipchangs and DevFS being slated for removal from
the main kernel tree. Bill said, <quote who="Bill Davidsen">And there you have
my largest complaint with the new model. If 2.6 is stable, it should not have
existing features removed just because someone has a new wet dream about a
better but incompatible way to do things. I expect working programs to be
deliberately broken in a development tree, but once existing features are
removed there simply is no stable set of features.</quote> William replied,
<quote who="William Lee Irwin III">The presumption is that these changes are
frivolous. This is false.  The removals of these features are motivated by
their unsoundness, and those removals resolve real problems. If they did not
do so, they would not pass peer review.</quote> But a few posts down the line,
Willy Tarreau objected:</p>

<quote who="Willy Tarreau">

<p>There was a feature freeze by which everything which was considered
hard to maintain or not very stable should have been removed.  When 2.6
was announced, it was with a set of features. Who know, perhaps there are
a few people who could replace a kernel 2.0 by a 2.6 on some firewalls.
Even if they are only 2 or 3 people, there is no reason that suddenly a
feature should be removed in the stable series. But it should be removed in
2.7 if it's a nightmare to maintain.</p>

<p>If the motivation to break backwards compatibility is not enough anymore
to justify development kernels, I don't know what will justify it anymore.
I'm particularly fed up by some developer's attitude who seem to never go
outside and see how their creations are used by people who really trust the
"stable" term... until they realize that this word is used only for marketting,
eg. help distro makers announce their new major release at the right moment.
ipfwadm had about 2 years to be removed before 2.6, wasn't that enough
? Once the stable release is out, the developer's point of view about how
is creation *might* be used is not a justification to remove it. But of
course, his difficulties at maintaining the code is fairly enough for him
to say "well, it was a mistake to enable this, I don't want it in the future
version anymore".</p>

<p>Why do you think that so many people are still using 2.4 (and even older
versions) ? This is because they are the only ones who don't constantly
change under your feet and from which you can build something reliable and
guaranteed maintainable. At least, I've not seen any commercial product
based on 2.6 yet !</p>

<p>Please, stop constantly changing the contents of the "stable" kernel.</p>

</quote>

<p>Diego Calleja said:</p>

<quote who="Diego Calleja">

<p>2.6 will stop having small issues in each release until 2.7 is forked
just like 2.4 broke things until 2.5 was forked. The difference IMO is that
linux development now avoids things like the unstability which the 2.4.10
changes caused and things like the fs corruption bugs we saw in 2.4</p>

<p>I fully agree with WLI that the 2.4 development model and the
backporting-mania created more problems than it solved, because in the real
world almost everybody uses what distros ship, and what distros ship isn't
kernel.org but heavily modified kernels, which means that the kernel.org
was not really "well-tested" or it took much longer to become "well-tested"
because it wasn't really being used.</p>

</quote>

<p>Roman Zippel replied, <quote who="Roman Zippel">Backporting isn't the
primary problem. The real problem were the huge time intervals between
stable releases. A new stable release brings a huge amount of changes which
got different levels of testing, which makes upgrading quite an experience.
What we need are regular releases of stable kernels with a manageable amount
of changes and a development tree to pull these changes from. It's a bit
comparable to Debian testing/unstable. Changes go only from one tree to the
other if they fulfil certain criteria. The job of the stable tree maintainer
wouldn't be anymore to apply random patches sent to him, but to select instead
which patches to pull from the development tree.  This doesn't of course
guarantees perfectly stable kernels, but it would encourage more people to
run recent stable kernels and avoids the huge steps in kernel upgrades. The
only problem is that I don't know of any source code management system which
supports this kind of development reasonably easy...</quote> Adrian also
said to Diego, <quote who="Adrian Bunk">The 2.6.9 -&gt; 2.6.10 patch is 28
MB, and while the changes that went into 2.4 were limited since the most
invasive patches were postponed for 2.5, now _all_ patches go into 2.6 .
Yes, -mm gives a bit more testing coverage, but it doesn't seem to be enough
for this vast amount of changes.</quote> A little later, he added, <quote
who="Adrian Bunk">My opinion is to fork 2.7 pretty soon and to allow into
2.6 only the amount of changes that were allowed into 2.4 after 2.5 forked.
Looking at 2.4, this seems to be a promising model.</quote></p>

<p>Theodore Ts'o broke in at this point, to say:</p>

<quote who="Theodore Ts'o">

<p>You have *got* to be kidding.  In my book at least, 2.4 ranks as one of
the less successful stable kernel series, especially as compared against
2.2 and 2.0.  2.4 was far less stable, and a vast number of patches that
distributions were forced to apply in an (only partially successful) attempt
to make 2.4 stable meant that there are some 2.4-based distributions where
you can't even run with a stock 2.4 kernel from kernel.org.  Much of the
reputation that Linux had of a rock-solid OS that never crashed or locked
up that we had gained during the 2.2 days was tarnished by 2.4 lockups,
especially in high memory pressure situations.</p>

<p>One of the things which many people have pointed out was that even 2.6.0
was more stable than 2.4 was for systems under high load.</p>

</quote>

<p>Marcelo Tosatti said, <quote who="Marcelo Tosatti">99% of the features
distributions have applied to their 2.4 based kernels are "enterprise"
features such as direct IO, AIO, etc.  Really I can't recall any "attempt
to make 2.4 stable" from the distros, its mostly "attempt to backport nice
v2.6 feature".</quote> Theodore replied, <quote who="Theodore Ts'o">Sorry,
those were two separate points; I should have been more careful to keep
the two separate.  I believe 2.4 has been less successful than other stable
series for two reasons.  The first is the very large divergence of what the
distributions (and therefore most users) were actually using from each other
and from kernel.org.  The second is the lack of stability, in particular with
systems with HIGHMEM configured, where low memory exhuastion is the first
thing I suspect when a customer tells me that a 2.4-based system with a lot
of memory freezes up.</quote> And William also added, <quote who="William
Lee Irwin III">I am unfortunately holding 2.4.x' earlier history against
it. While you were maintaining it, much of what we're discussing was resolved.
Unfortunately, the stabilization you're talking about was essentially too late;
distros had long-since wildly diverged, they had frozen on older releases,
and the damage to Linux' reputation was already done.  I'm also unaware
of major commercial distros (e.g. Red Hat, SuSE) using 2.4.x more recent
than 2.4.21 as a baseline, and it's also notable that one of the largest
segments of the commercial userbase I see is using a distro kernel based on
2.4.9.</quote> Marcelo agreed wholeheartedly with this.</p>

<p>Elsewhere in the subthread, Theodore remarked, <quote who="Theodore
Ts'o">The real key, as always, is getting users to download and test a release.
So another approach might be to shorten the time between 2.6.x and 2.6.x+1
releases, so as to recreate more testing points, without training people to
wait for -bk1, -bk2, -rc1, etc. before trying out the kernel code.  This is
the model that we used with the 2.3.x series, where the time between releases
was often quite short.  That worked fairly well, but we stopped doing it when
the introduction of BitKeeper eliminated the developer synch-up problem.
But perhaps we've gone too far between 2.6.x releases, and should shorten
the time in order to force more testing.</quote> Russell King replied, <quote
who="Russell King">It is also the model we used until OLS this year - there
was a 2.6 release about once a month prior to OLS.  Post OLS, it's now once
every three months or there abouts, which, IMO is far too long.  I really
liked the way pre-OLS 2.6 was working... it means I don't have to twiddle my
fingers getting completely bored waiting for the next 2.6 release to happen.
Can we return to that methodology please?</quote> William seconded this,
as did Randy Dunlap, who added, <quote who="Randy Dunlap">We (whoever
"we" are) have erred too much on longer cycles for stability, but it's
not working out as hoped IMO.</quote> And Alan Cox said, <quote who="Alan
Cox">After 2.6.9-ac its clear that the long 2.6.9 process worked very badly.
While 2.6.10 is looking much better its long period meant the allegedly
"official" base kernel was a complete pile of insecure donkey turd for
months. That doesn't hurt most vendor users but it does hurt those trying
to do stuff on the base kernels very badly.</quote></p>

</section>

<section
  title="DVB bt8xx Attempted Fixes"
  subject="PATCH: DVB bt8xx in 2.6.10"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/b8ac12a807021210"
  posts="5"
  startdate="04 Jan 2005 08:50:43 -0800"
  enddate="06 Jan 2005 04:13:47 -0800"
>
<topic>Digital Video Broadcasting</topic>

<mention>Johannes</mention>

<p>Arne Ahrend said, <quote who="Arne Ahrend">This patch allows the user
to select only actually desired frontend driver(s) for bt8xx based DVB
cards by removing calls to frontend-specific XXX_attach() functions and
returning NULL instead for unconfigured frontends.  To keep this patch
small, no attempt is made to #ifdef away other static functions or data
for unselected frontends. This leads to compiler warnings about defined,
but unused code, unless all four frontends relevant to bt8xx based cards
are selected.  I have tested this on the Avermedia 771 (the only DVB card I
have access to).</quote> Johannes Stezenbach replied, <quote who="Johannes
Stezenbach">This approach has been discussed on the linux-dvb list and was
rejected because of the huge #ifdef mess it creates (you just touched bt8xx,
it's even worse for saa7146 based cards). The frontend drivers are tiny
so I think you can afford to load some that aren't actually used by your
hardware.</quote> Arne accepted this, but offered some cosmetic changes to
the code in any case; which Johannes accepted.</p>

</section>

<section
  title="In-Kernel Genetic Algorithm Library"
  subject="[ANNOUNCE 0/4][RFC] Genetic Algorithm Library"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/193894e60d7ae2e3"
  posts="12"
  startdate="06 Jan 2005 08:08:44 -0800"
  enddate="10 Jan 2005 07:54:42 -0800"
>

<mention>William Lee Irwin III</mention>

<p>Jake Moilanen said:</p>

<quote who="Jake Moilanen">

<p>I'm pleased to announce a new in-kernel library to do kernel tuning
using a genetic algorithm.</p>

<p>This library provides hooks for kernel components to take advantage of a
genetic algorithm.  There are patches to hook the different schedulers
included.</p>

<p>The basic flow of the genetic algorithm is as follows:</p>

<p>

<ol>

<li>Start w/ a broad list of initial tunable values (each set of
        tunables is called a child)</li>
<li>Let each child run for a timeslice.</li>
<li>Once the timeslice is up, calculate the fitness of the child (how
well performed).</li>
<li>Run the next child in the list.</li>
<li>Once all the children have run, compare the fitnesses of each child
        and throw away the bottom-half performers.</li>
<li>Create new children to take the place of the bottom-half performers
        using the tunables from the top-half performers.</li>
<li>Mutate a set number of children to keep variance.</li>
<li>Goto step 2.</li>

</ol>

</p>

<p>Over time the tunables should converge toward the optimal settings for
that workload.  If the workload changes, the tunables should converge to
the new optimal settings (this is part of the reason for mutation).
This algorithm is used extensively in AI.</p>

<p>Using these patches, there are small gains (1-3%) in Unixbench &amp;
SpecJBB.  I am hoping a scheduler guru will able to rework them to give
higher gains.</p>

<p>The main area that could use reworking is the fitness calculation.  The
problem is that the kernel is looking more at the micro of what's going
on, instead of the macro.  I am thinking of moving the fitness
calculation to outside the kernel.</p>

<p>However, I would advocate keeping the number of layers needed to communicate
between the genetic library and the hooked component down in order to
keep it as lightweight as possible.</p>

<p>The patches are based on 2.6.9 and still a little rough, but here is the
descriptions:</p>

<p>[1/4 genetic-lib]: This is the base patch for the genetic algorithm.
        It's based against 2.6.9.</p>

<p>[2/4 genetic-io-sched]: The base patch for the IO schedulers to use the
        genetic library.</p>

<p>[3/4 genetic-as-sched]: A genetic-lib hooked anticipatory IO scheduler.</p>

<p>[4/4 genetic-zaphod-cpu-sched]: A hooked zaphod CPU scheduler.  Depends
        on the zaphod-v6 patch.</p>

</quote>

<p>One would expect something like an in-kernel genetic algorithm library to
receive about the same welcome as an in-kernel Perl interpreter, but actually
folks were fairly polite about it. James Bruce asked if Jake included a
cross-over algorithm; but after perusing the code he saw that Jake did
indeed implement cross-over. He asked, <quote who="James Bruce">What is
the motivation for generating two children at once, instead of just one?
Genes values shouldn't get "lost" since the parents are being kept around
anyway.  Also, since the parameters in general will not have a meaningful
ordering, it might make sense for the generic crossover to be the "each
gene randomly picked from one of the two parents" approach.  In practice
I've found that to mix things up a bit better in the parameter optimization
problems I've done with GAs.</quote> Jake replied:</p>

<quote who="Jake Moilanen">

<p>The intitial motivation for creating two children at once was so each
parent could pass on all of their genes.  The 75% of the parent's genes
might be in child A, but the other 25% would be in child B.</p>

<p>Thinking about it more, there should be no reason that all of a parent's
genes have to be passed on in a child.  It would not be too difficult to
have each gene come randomly from one of the two parents.  I'll add that in
on the next rev of the patches.</p>

</quote>

<p>Pedro Larroy also commented on Jake's patches, saying:</p>

<quote who="Pedro Larroy">

<p>your algorithm tends to converge to a global optimum, but also as William
Lee Irwin III has commentend on irc, it might miss "special points" since
there's no warranty of the function to minize to be continuous.</p>

<p>I think it's a good idea to introduce this techniques to tune the kernel,
but perhaps userland would be the right place for them, to be able to switch
them off when in need or have more controll over them.  But it's a nice
initiative in my opinion.</p>

</quote>

<p>Jake replied, regarding a user-space implementation. He said, <quote
who="Jake Moilanen">I considered doing this in userland at first, but I went
away from it for a couple reasons.  I wanted users of the library to have a
lot of flexibility.  There was also a concern with the extra overhead going
inbetween user/kernel space (important for users who's children have very short
life-spans).</quote> And regarding William Lee Irwin III's idea about missing
"special points", Jake said, <quote who="Jake Moilanen">This is a very good
point, and is something that I'm working on now.  I would like to be able
to able to have multiple fitness rankings (ex. one that ranks specifically
for throughput and one specifically for interactivity/latency).  Then tune
specific genes, that actually impact that specific fitness check.</quote></p>

</section>

<section
  title="Linux 2.4.29-rc1 Released"
  subject="Linux 2.4.29-rc1"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/d326c284f84dc8df"
  posts="1"
  startdate="07 Jan 2005 02:49:13 -0800"
>
<topic>Serial ATA</topic>

<p>Marcelo Tosatti announced Linux 2.4.29-rc1, saying:</p>

<quote who="Marcelo Tosatti">

<p>Here goes the first release canditate of v2.4.29.</p>

<p>This time it contains a SATA update, bunch of network drivers updates,
amongst others.</p>

<p>More importantly it fixes a sys_uselib() vulnerability discovered by
Paul Starzetz:</p>

<p>CAN-2004-1235<br />
<a href="http://isec.pl/vulnerabilities/isec-0021-uselib.txt">http://isec.pl/vulnerabilities/isec-0021-uselib.txt</a></p>

<p>Upgrade is recommended for users of v2.4.x mainline, distros should be
releasing their updates real soon now.</p>

</quote>

</section>

<section
  title="Status Of The &quot;Halloween Document&quot; And Freinds"
  subject="2.6.x features log"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/68a52e60550f394a"
  posts="7"
  startdate="07 Jan 2005 09:34:36 -0800"
  enddate="09 Jan 2005 11:36:43 -0800"
>
<topic>Big O Notation</topic>
<topic>FS: devfs</topic>
<topic>Hot-Plugging</topic>
<topic>Power Management: ACPI</topic>
<topic>SMP</topic>
<topic>Scheduler</topic>
<topic>Version Control</topic>

<p>Randy Dunlap said:</p>

<quote who="Randy Dunlap">

<p>I think that people really like the Dave Jones 2.5/2.6 halloween
information/update.  It contained a lot of useful info in one place, with
pointers to more details.</p>

<p>What I'm seeing (and getting a little concerned about, although I dislike PR
with a passion) is that the 2.6.x continuous development cycle will cause us
(the Linux community) to miss logging some of these important new features
(outside of bk).  Has anyone kept a track of new features that are being
added in 2.6?</p>

<p>I'll keep a list (or someone else can -- DaveJ ?) if anyone is interested
in feeding items into it.  Or do distros already keep such a running list
of new features?</p>

<p>For example (and some of these might not be needed here):</p>

<p>

<ul>

<li>NUMA support and API, including some CPU affinity updates</li>
<li>hotplug and udev</li>
<li>security fixes</li>
<li>better ACPI support, better interrupt routing, MSI support</li>
<li>faster pipes</li>

</ul>

</p>

</quote>

<p>Jerome Lacoste replied, <quote who="Jerome
Lacoste">I loved going through the kernel newbies status: <a
href="http://www.kernelnewbies.org/status/">http://www.kernelnewbies.org/status/</a>.
Unfortunately it's not updated anymore.</quote></p>

<p>Rahul Karnik also remarked, <quote who="Rahul Karnik">Personally
speaking, the key feature of the Halloween document was not documenting
what new features we had in the kernel -- it was the ability to see what
_user-visible_ changes there were. As a "mainstream" user, I might not care
much about a new O(1) scheduler, but I might be affected by the removal of
(say) ipchains.</quote></p>

<p>Diego Calleja also said, <quote who="Diego Calleja"><a
href="http://lwn.net">lwn.net</a> has always had a excellent kernel development
coverage</quote>.</p>

<p>Elsewhere, Dave Jones said, <quote who="Dave Jones">I don't really
have the time right now to maintain it, but if you want to take anything
from the doc I wrote, or push it for inclusion in the tree so others can
modify it at will, feel free.</quote> Close by, Christoph Hellwig said,
<quote who="Christoph Hellwig">Debian actually patches Dave's post_halloween
document into Documentation.  Maybe we should put it there for mainline aswell
and make sure to update it when doing major changes?</quote> Dave replied,
<quote who="Dave Jones">I've said "Sure, go for it" to a number of people
who brought this up, but nothing has ever come of it.  I'll send it to Linus
myself later today. 8)</quote></p>

</section>

<section
  title="Status Of bcopy"
  subject="removing bcopy... because it's half broken"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/2133b88eee3dbbbd"
  posts="13"
  startdate="09 Jan 2005 11:23:05 -0800"
  enddate="11 Jan 2005 08:10:52 -0800"
>
<topic>BSD</topic>

<p>Arjan van de Ven said:</p>

<quote who="Arjan van de Ven">

<p>Nothing in the kernel is using bcopy right know, and that is a good thing.
Why? Because a lot of the architectures implement a broken bcopy()....
the userspace standard bcopy() is basically a memmove() with a weird
parameter order, however a bunch of architectures implement a memcpy()
not a memmove().</p>

<p>Instead of fixing this inconsistency, I decided to remove it entirely,
explicit memcpy() and memmove() are prefered anyway (welcome to the 1990's)
and nothing in the kernel is using these functions, so this saves code size
as well for everyone.</p>

</quote>

<p>Linus Torvalds replied:</p>

<quote who="Linus Torvalds">

<p>The problem is that at least some gcc versions would historically generate
calls to "bcopy" on alpha for structure assignments. Maybe it doesn't any
more, and no such old gcc versions exist any more, but who knows?</p>

<p>That's also why "bcopy" just acts like a memcpy() in many cases: it's
simply not worth it to do the complex case, because the only valid use was
a compiler that would never validly do overlapping ranges anyway.</p>

<p>Gcc _used_ to have a target-specific "do I use bcopy or memcpy" setting,
and I just don't know if that is still true. I also don't know if it
affected any other platforms than alpha (I would assume that it matched
"target has BSD heritage", and that would likely mean HP-UX too)</p>

<p>Richard? You know both gcc and alpha, what's the word?</p>

</quote>

<p>Richard Henderson replied:</p>

<quote who="Richard Henderson">

<p>Yes, TARGET_MEM_FUNCTIONS.  It's never not set for Linux targets.  Or for
OSF/1 for that matter...  Indeed, it would take me some time to figure out
which targets it's *not* set for.</p>

<p>(Yet another thing that ought to get cleaned up -- either invert the
default value or simply require the target to either provide the libc entry
point or add a version to libgcc.)</p>

<p>I'm not sure how far back you'd have to go to find an Alpha compiler that
needs this.  Prolly back to at least gcc 2.6, but I don't have sources that
old handy to check.</p>

</quote>

</section>

<section
  title="IA64 Maintainership"
  subject="[PATCH] New ia64 maintainer"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/a28010184dc654ba"
  posts="1"
  startdate="10 Jan 2005 13:00:47 -0800"
>

<mention>David Mosberger</mention>

<p>Tony Luck said that David Mosberger-Tang had <quote who="Tony Luck">handed
over the keys a few months ago.  Time to make sure everyone knows to send
stuff to me.</quote> He posted a patch to list himself as the official
maintainer of the IA64 platform instead of David.</p>

</section>

<section
  title="Linux 2.2.27-rc1 Released"
  subject="Linux 2.2.27-rc1"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/1193c3ed4848f120"
  posts="1"
  startdate="11 Jan 2005 09:14:12 -0800"
>

<p>Marc-Christian Petersen announced Linux 2.2.27-rc1, saying, <quote
who="Marc-Christian Petersen">here goes 2.2.27-rc1. Please let me know if
I missed something security related. It's hard to keep up2date with latest
tons of security vulns ;)</quote></p>

</section>

<section
  title="DebugFS Gains Ground"
  subject="debugfs directory structure"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/74caaf05bdf0bf3d"
  posts="5"
  startdate="12 Jan 2005 12:50:51 -0800"
  enddate="12 Jan 2005 14:16:33 -0800"
>

<p>Roland Dreier said, <quote who="Roland Dreier">Now that debugfs is merged
into Linus's tree, I'm looking at using it to replace the IPoIB debugging
pseudo-filesystem (ipoib_debugfs).  Is there any guidance on what the
structure of debugfs should look like?  Right now I'm planning on putting all
the debug info files under an ipoib/ top level directory.  Does that sound
reasonable?</quote> Greg KH was thrilled that Roland was going to use it;
he said, <quote who="Greg KH">Anarchy rules in debugfs.  Do what you want.
If you stomp over someone else's stuff, I expect complaints and maybe someone
will have to arbitrate, but odds are that will ever happen is pretty slim.
So yes, ipoib/ in the top level sounds just fine.</quote></p>

</section>

</kc>

