<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="73" date="26 Jun 2000 00:00:00 -0800" />

<intro>

Thanks go out to Marius Gedminas for finding some serious HTML errors in
last week's issue, and a bug in the compiler that produces these pages! Good
eye, Marius! Thanks!!

</intro>

<stats posts="1363" size="5519" contrib="463" multiples="217" lastweek="173">

<person posts="87" size="369" who="Alan Cox " />
<person posts="38" size="154" who="Rik van Riel " />
<person posts="34" size="151" who="Andrea Arcangeli " />
<person posts="29" size="110" who="Alexander Viro " />
<person posts="21" size="68" who="Jeff Garzik " />
<person posts="19" size="85" who="James Sutherland " />
<person posts="19" size="58" who="Richard Gooch " />
<person posts="18" size="66" who="Andre Hedrick " />
<person posts="16" size="70" who="David Ford " />
<person posts="15" size="88" who="&quot;Albert D. Cahalan&quot; " />
<person posts="14" size="58" who="Marcelo Tosatti " />
<person posts="14" size="57" who="&quot;H. Peter Anvin&quot; " />
<person posts="14" size="50" who="Pavel Machek " />
<person posts="14" size="44" who="James Simmons " />
<person posts="13" size="54" who="&quot;H. Peter Anvin&quot; " />
<person posts="13" size="53" who="Andries Brouwer " />
<person posts="13" size="50" who="wollny " />
<person posts="13" size="47" who="&quot;Juan J. Quintela&quot; " />
<person posts="13" size="45" who=" (Rogier Wolff)" />
<person posts="12" size="79" who="Jesse Pollard " />
<person posts="11" size="40" who="&quot;Anthony Barbachan&quot; " />
<person posts="11" size="34" who="Jens Axboe " />
<person posts="10" size="41" who="&quot;Richard B. Johnson&quot; " />
<person posts="10" size="41" who="Mike Galbraith " />
<person posts="10" size="36" who="" />
<person posts="9" size="35" who="&quot;Jeff V. Merkey&quot; " />
<person posts="9" size="33" who="Keith Owens " />
<person posts="9" size="31" who="Goswin Brederlow " />
<person posts="9" size="28" who="Matthias Andree " />
<person posts="8" size="47" who="Jesse Pollard " />
<person posts="8" size="34" who="Kees Bakker " />
<person posts="8" size="28" who="Ivan Kokshaysky " />
<person posts="8" size="27" who="Jes Sorensen " />
<person posts="8" size="26" who="Richard Stallman " />
<person posts="7" size="55" who="&quot;Joseph Gooch&quot; " />
<person posts="7" size="36" who="Neil Brown " />
<person posts="7" size="31" who="Richard Torkar " />
<person posts="7" size="25" who="Russell King " />
<person posts="7" size="24" who="&quot;Khimenko Victor&quot; " />
<person posts="7" size="22" who="Miles Lane " />
<person posts="7" size="22" who="Tigran Aivazian " />
<person posts="6" size="21" who="Xuan Baldauf " />
<person posts="6" size="20" who="Cesar Eduardo Barros " />
<person posts="6" size="20" who="&quot;Kenneth C. Arnold&quot; " />
<person posts="6" size="20" who="Christopher Zimmerman " />
<person posts="6" size="19" who="&quot;Andi Kleen&quot; " />
<person posts="6" size="19" who="" />
<person posts="6" size="18" who="" />
<person posts="6" size="18" who="Jeff Dike " />
<person posts="6" size="16" who="David Woodhouse " />
<person posts="5" size="38" who="Bartlomiej Zolnierkiewicz " />
<person posts="5" size="31" who="Manfred Spraul " />
<person posts="5" size="28" who="Frank van Maarseveen " />
<person posts="5" size="21" who="" />
<person posts="5" size="21" who="jesse hammons " />
<person posts="5" size="21" who="Robert Dinse " />
<person posts="5" size="19" who="Norbert Tretkowski " />
<person posts="5" size="18" who="Adam Sampson " />
<person posts="5" size="16" who="Ricky Beam " />
<person posts="5" size="16" who="Edward Betts " />
<person posts="5" size="15" who="Blusjune Jung " />
<person posts="5" size="15" who="Philipp Rumpf " />
<person posts="5" size="14" who="Florian Lohoff " />
<person posts="5" size="14" who="Rui Sousa " />
<person posts="4" size="36" who="Francois romieu " />
<person posts="4" size="36" who="&quot;George Sexton&quot; " />
<person posts="4" size="26" who="Andrew Sharp " />
<person posts="4" size="22" who="Andrew Morton " />
<person posts="4" size="18" who="Tim Waugh " />
<person posts="4" size="18" who="Eric Buddington " />
<person posts="4" size="18" who="Philipp Thomas " />
<person posts="4" size="16" who="&quot;Adam J. Richter&quot; " />
<person posts="4" size="15" who="Brad Douglas " />
<person posts="4" size="14" who="" />
<person posts="4" size="14" who="David Hinds " />
<person posts="4" size="14" who="Helge Hafting " />
<person posts="4" size="14" who="Peter Rival " />
<person posts="4" size="12" who=" (Miquel van Smoorenburg)" />
<person posts="4" size="12" who="Paul Jakma " />
<person posts="4" size="12" who="Petko Manolov " />
<person posts="4" size="12" who="Jon Masters " />
<person posts="4" size="10" who="" />
<person posts="4" size="10" who="&quot;Garst R. Reese&quot; " />
<person posts="3" size="30" who="&quot;Michael S. Fischer&quot; " />
<person posts="3" size="26" who="Byron Stanoszek " />
<person posts="3" size="19" who="Shane Wegner " />
<person posts="3" size="15" who="Carlos Eduardo Gorges " />
<person posts="3" size="15" who="bug1 " />
<person posts="3" size="15" who="&quot;Lucius Chang&quot; " />
<person posts="3" size="14" who="Geert Uytterhoeven " />
<person posts="3" size="14" who="&quot;Michael T. Gilmore&quot; " />
<person posts="3" size="13" who="Ludovic LANGE " />
<person posts="3" size="13" who="Rusty Russell " />
<person posts="3" size="12" who="Ed Carp " />
<person posts="3" size="12" who="&quot;Dunlap, Randy&quot; " />
<person posts="3" size="12" who="Rainer Wiener " />
<person posts="3" size="12" who="&quot;J. Robert von Behren&quot; " />
<person posts="3" size="12" who="Paul Barton-Davis " />
<person posts="3" size="11" who=" (Peter Bornemann)" />
<person posts="3" size="11" who="&quot;Steven N. Hirsch&quot; " />
<person posts="3" size="11" who="Stephen Frost " />
<person posts="3" size="10" who="&quot;Sharad Joshi&quot; " />
<person posts="3" size="10" who="Tom Leete " />
<person posts="3" size="10" who="Mike Panetta " />
<person posts="3" size="10" who="Francis Galiegue " />
<person posts="3" size="10" who="James Cownie " />
<person posts="3" size="9" who="&quot;Manfred Spraul&quot; " />
<person posts="3" size="9" who="Trond Myklebust " />
<person posts="3" size="9" who="Andrey Savochkin " />
<person posts="3" size="9" who="Alex Buell " />
<person posts="3" size="9" who="Jamie Lokier " />
<person posts="3" size="9" who="Ivan Passos " />
<person posts="3" size="9" who="Jon Evans " />
<person posts="3" size="9" who="Simon Richter " />
<person posts="3" size="9" who="Steve Dodd " />
<person posts="3" size="8" who="Richard Henderson " />
<person posts="3" size="8" who=" (Dave Jones)" />
<person posts="3" size="8" who="Enrico Weigelt " />
<person posts="3" size="8" who="&quot;Nerijus&quot; " />
<person posts="3" size="8" who="&quot;Rolf Martin-Hoster&quot; " />
<person posts="3" size="8" who="&quot;Stephen C. Tweedie&quot; " />
<person posts="3" size="8" who=" (Arjan van de Ven)" />
<person posts="3" size="8" who="Olivier Galibert " />
<person posts="3" size="7" who="Chris Meadors " />
<person posts="3" size="7" who="Sid Boyce " />
<person posts="3" size="7" who="Adam " />
<person posts="2" size="39" who="Christoph Hellwig " />
<person posts="2" size="25" who="" />
<person posts="2" size="24" who="&quot;Walter Klomp&quot; " />
<person posts="2" size="16" who="Andreas Tobler " />
<person posts="2" size="15" who="Daniel Pittman " />
<person posts="2" size="15" who="Jan Kasprzak " />
<person posts="2" size="13" who="Jim Gettys " />
<person posts="2" size="11" who="Matthew Hawkins " />
<person posts="2" size="10" who=" (Marlys Kohnke)" />
<person posts="2" size="10" who="Brian Wellington " />
<person posts="2" size="9" who="&quot;Rask Ingemann Lambertsen&quot; " />
<person posts="2" size="9" who="Jean-Luc Coulon " />
<person posts="2" size="9" who="&quot;Bakonyi Ferenc&quot; " />
<person posts="2" size="9" who=" (Ton Hospel)" />
<person posts="2" size="9" who="Jeff Hittman " />
<person posts="2" size="8" who="Meir " />
<person posts="2" size="8" who=" (Henrique M. Holschuh)" />
<person posts="2" size="8" who="&quot;Michael D. Crawford&quot; " />
<person posts="2" size="8" who="&quot;Mayhall, Tony&quot; " />
<person posts="2" size="8" who="Mark Hemment " />
<person posts="2" size="8" who="Pollei " />
<person posts="2" size="8" who="Markus Gutschke " />
<person posts="2" size="8" who="Thorsten Kranzkowski " />
<person posts="2" size="8" who="&quot;Forever shall I be.&quot; " />
<person posts="2" size="8" who="Urban Widmark " />
<person posts="2" size="7" who="Ookhoi " />
<person posts="2" size="7" who="&quot;Tim R.&quot; " />
<person posts="2" size="7" who="Ian McKellar " />
<person posts="2" size="7" who="Warren Young " />
<person posts="2" size="7" who=" (goingware.com)" />
<person posts="2" size="7" who="William Stearns " />
<person posts="2" size="7" who="David Luyer " />
<person posts="2" size="7" who="" />
<person posts="2" size="7" who="Wolfgang Walter " />
<person posts="2" size="7" who="Dan Kegel " />
<person posts="2" size="7" who="&quot;CRADOCK, Christopher&quot; " />
<person posts="2" size="7" who="&quot;Scott M. Ransom&quot; " />
<person posts="2" size="7" who="=?iso-8859-1?Q?Christoph_Br=FCninghaus?= " />
<person posts="2" size="7" who="Arnd Bergmann " />
<person posts="2" size="7" who="Dominik Kubla " />
<person posts="2" size="6" who="Gary Lawrence Murphy " />
<person posts="2" size="6" who="Roger Larsson " />
<person posts="2" size="6" who="Chris Mason " />
<person posts="2" size="6" who="&quot;Theodore Ts'o&quot; " />
<person posts="2" size="6" who="" />
<person posts="2" size="6" who="Hans Reiser " />
<person posts="2" size="6" who="Ben Pfaff " />
<person posts="2" size="6" who="Timur Tabi " />
<person posts="2" size="6" who="&quot;Brandon S. Allbery KF8NH&quot; " />
<person posts="2" size="6" who="Matthias Schniedermeyer " />
<person posts="2" size="6" who="Lorinczy Zsigmond " />
<person posts="2" size="6" who="Nick Cabatoff " />
<person posts="2" size="6" who="Jonathan de Boyne Pollard " />
<person posts="2" size="6" who="Erik Andersen " />
<person posts="2" size="6" who="Brian Gerst " />
<person posts="2" size="6" who="Jan Niehusmann " />
<person posts="2" size="6" who="Myrddin Ambrosius " />
<person posts="2" size="6" who="Momchil Velikov " />
<person posts="2" size="6" who=" (Hans-Joachim Baader)" />
<person posts="2" size="6" who="&quot;H . J . Lu&quot; " />
<person posts="2" size="5" who="Gregory Maxwell " />
<person posts="2" size="5" who="Paul Mansfield " />
<person posts="2" size="5" who="Alexander S A Kjeldaas " />
<person posts="2" size="5" who="" />
<person posts="2" size="5" who="Md A Saifulla " />
<person posts="2" size="5" who="Michal Ostrowski " />
<person posts="2" size="5" who="Matthew Kirkwood " />
<person posts="2" size="5" who="&quot;Stephen Liu&quot; " />
<person posts="2" size="5" who="Davidovac Zoran " />
<person posts="2" size="5" who="&quot;John Hughes&quot; " />
<person posts="2" size="5" who="Aaron Macks " />
<person posts="2" size="5" who="Chip Salzenberg " />
<person posts="2" size="5" who="" />
<person posts="2" size="5" who="&quot;Steve Holdener&quot; " />
<person posts="2" size="5" who="Aaron Tiensivu " />
<person posts="2" size="5" who="Horst von Brand " />
<person posts="2" size="5" who="Manfred Spraul " />
<person posts="2" size="5" who="Kjartan Maraas " />
<person posts="2" size="5" who="&quot;Lapre, Justin M&quot; " />
<person posts="2" size="5" who="&quot;James H. Cloos Jr.&quot; " />
<person posts="2" size="5" who="&quot;Rajeev Bector&quot; " />
<person posts="2" size="5" who="raven " />
<person posts="2" size="5" who="" />
<person posts="2" size="5" who="Ari Pollak " />
<person posts="2" size="5" who="Tonglu Yi " />
<person posts="2" size="5" who="clubneon " />
<person posts="2" size="5" who="Klaus Kudielka " />
<person posts="2" size="4" who="&quot;Paulo dos Santos&quot; " />
<person posts="2" size="4" who="Pau Aliagas " />
<person posts="2" size="4" who="Michael Meding " />
<person posts="2" size="4" who="josef =?iso-8859-1?Q?h=F6=F6k?= " />
<person posts="1" size="56" who="&quot;Tim O'Shea [tmo]&quot; " />
<person posts="1" size="27" who="Happy " />
<person posts="1" size="13" who="&quot;Kenneth J. Hendrickson&quot; " />
<person posts="1" size="11" who="Fulton Green " />
<person posts="1" size="9" who="" />
<person posts="1" size="9" who="Aaron Denney " />
<person posts="1" size="7" who="David Benfell " />
<person posts="1" size="7" who=" (Helmut Kreiser, Linux + VMS Admin, GSI Darmstadt" />
<person posts="1" size="7" who="Brian McNally " />
<person posts="1" size="7" who="David Temkin " />
<person posts="1" size="7" who="&quot;ostro mM mahr&quot; " />
<person posts="1" size="6" who="Claude Lefrancois " />
<person posts="1" size="6" who=" (Aaron Denney)" />
<person posts="1" size="6" who="Albert Cranford " />
<person posts="1" size="6" who="&quot;Heinz J. Mauelshagen&quot; " />
<person posts="1" size="6" who="Henning Weber " />
<person posts="1" size="6" who="&quot;Peter Zaitsev&quot; " />
<person posts="1" size="6" who="Jan Evert van Grootheest " />
<person posts="1" size="5" who="&quot;Matthew J. Sullivan&quot; " />
<person posts="1" size="5" who="" />
<person posts="1" size="5" who="" />
<person posts="1" size="5" who="&quot;Justin C. Darby&quot; " />
<person posts="1" size="5" who="" />
<person posts="1" size="5" who="Jeff Hill " />
<person posts="1" size="5" who="Daniel Taylor " />
<person posts="1" size="5" who="&quot;Soeren Sonnenburg&quot; " />
<person posts="1" size="5" who="Andrey Panin " />
<person posts="1" size="5" who="Pete Toscano " />
<person posts="1" size="5" who="Tony Hoffmann " />
<person posts="1" size="5" who="Jun Hamano " />
<person posts="1" size="5" who="Raven " />
<person posts="1" size="5" who="NIIBE Yutaka " />
<person posts="1" size="5" who="Tony Hoyle " />
<person posts="1" size="4" who="Harald Koenig " />
<person posts="1" size="4" who="Zdenek Kabelac " />
<person posts="1" size="4" who="Steve Whitehouse " />
<person posts="1" size="4" who="kmb " />
<person posts="1" size="4" who="&quot;John Anthony Kazos Jr.&quot; " />
<person posts="1" size="4" who="George Anzinger " />
<person posts="1" size="4" who="Mike Castle " />
<person posts="1" size="4" who="Dietmar Schnabel " />
<person posts="1" size="4" who="Chris Butler " />
<person posts="1" size="4" who="Carlos Parada " />
<person posts="1" size="4" who="Zlatko Calusic " />
<person posts="1" size="4" who="Jim Barriault " />
<person posts="1" size="4" who=" (David A. Wagner)" />
<person posts="1" size="4" who="&quot;Mark Hemment&quot; " />
<person posts="1" size="4" who="Maffia Angelo " />
<person posts="1" size="4" who="Stephen Thorne " />
<person posts="1" size="4" who="Sebastien Rougeaux " />
<person posts="1" size="4" who="" />
<person posts="1" size="4" who="doc " />
<person posts="1" size="4" who="Billy Harvey " />
<person posts="1" size="4" who="Frank Dekervel " />
<person posts="1" size="4" who="&quot;David Schwartz&quot; " />
<person posts="1" size="4" who="David Mosberger " />
<person posts="1" size="4" who="Mikulas Patocka " />
<person posts="1" size="4" who="David D Golombek " />
<person posts="1" size="4" who="Hubert Mantel " />
<person posts="1" size="4" who="Andrew McNabb " />
<person posts="1" size="4" who="&quot;Mark H. Wood&quot; " />
<person posts="1" size="4" who="Martin Frey " />
<person posts="1" size="4" who="Bernd Markgraf " />
<person posts="1" size="4" who="Paul Jakma " />
<person posts="1" size="4" who="Rob van Nieuwkerk " />
<person posts="1" size="4" who="Jeff Waller " />
<person posts="1" size="4" who="Andrew Morgan " />
<person posts="1" size="4" who="Krzysztof Halasa " />
<person posts="1" size="3" who="Zack Weinberg " />
<person posts="1" size="3" who="&quot;Daniel Pittman&quot; " />
<person posts="1" size="3" who="Bonita Hatcher " />
<person posts="1" size="3" who="Ward Vandewege " />
<person posts="1" size="3" who="Jeremy Katz " />
<person posts="1" size="3" who="Vojtech Pavlik " />
<person posts="1" size="3" who="Peter Blomgren " />
<person posts="1" size="3" who="&quot;Malapati Narasimha Raju&quot; " />
<person posts="1" size="3" who="&quot;Theodore Y. Ts'o&quot; " />
<person posts="1" size="3" who="Dimitris Michailidis " />
<person posts="1" size="3" who="George France " />
<person posts="1" size="3" who="Thai " />
<person posts="1" size="3" who="joel reed " />
<person posts="1" size="3" who=" (Henrique M. Holschuh)" />
<person posts="1" size="3" who="Mike Stump " />
<person posts="1" size="3" who="mberglund " />
<person posts="1" size="3" who="&quot;Martin v. Loewis&quot; " />
<person posts="1" size="3" who="Leon Brooks " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Corey Minyard " />
<person posts="1" size="3" who="Bernhard Rosenkraenzer " />
<person posts="1" size="3" who="&quot;Philip I. Long&quot; " />
<person posts="1" size="3" who="&quot;Thomas S. Iversen&quot; " />
<person posts="1" size="3" who="Bonita Hatcher " />
<person posts="1" size="3" who="Joe Buck " />
<person posts="1" size="3" who="Jacques Richer " />
<person posts="1" size="3" who="Tim Hollebeek " />
<person posts="1" size="3" who="Ron Flory " />
<person posts="1" size="3" who="Rabeeh Khoury " />
<person posts="1" size="3" who="&quot;Dr. Kelsey Hudson&quot; " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Marc Mutz " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Adam Radford " />
<person posts="1" size="3" who="Chuck Lever " />
<person posts="1" size="3" who="Casey Schaufler " />
<person posts="1" size="3" who="Anton Altaparmakov " />
<person posts="1" size="3" who="Adam Donnison " />
<person posts="1" size="3" who="Ulrich Drepper " />
<person posts="1" size="3" who="Joel Jaeggli " />
<person posts="1" size="3" who="Rodrigo Barbosa " />
<person posts="1" size="3" who="Bruce Cowan " />
<person posts="1" size="3" who="&quot;Troy E. Ablan&quot; " />
<person posts="1" size="3" who="Andreas Bombe " />
<person posts="1" size="3" who="Nicholas Marouf " />
<person posts="1" size="3" who="Paul " />
<person posts="1" size="3" who="Mark Orr " />
<person posts="1" size="3" who="&quot;stefano.passarella&quot; " />
<person posts="1" size="3" who="Mike Coleman " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="&quot;Marcel J.E. Mol&quot; " />
<person posts="1" size="3" who="&quot;Charles Turner, Ph.D.&quot; " />
<person posts="1" size="3" who="&quot;Meng, David&quot; " />
<person posts="1" size="3" who="&quot;Tran's family&quot; " />
<person posts="1" size="3" who="Roger Gammans " />
<person posts="1" size="3" who="Camm Maguire " />
<person posts="1" size="3" who="Jonathan Paul Cowherd " />
<person posts="1" size="3" who="Pauline Middelink " />
<person posts="1" size="3" who="CaT " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who=" (Patrick J. LoPresti)" />
<person posts="1" size="3" who="&quot;Phillips, Mike&quot; " />
<person posts="1" size="3" who="Michael Cunningham " />
<person posts="1" size="3" who="&quot;A. Supreeth Reddy&quot; " />
<person posts="1" size="3" who="Michael Nelson " />
<person posts="1" size="3" who="Alan Cox " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Chad Miller " />
<person posts="1" size="3" who="&quot;B Wyatt&quot; " />
<person posts="1" size="3" who="Huynh Hoang Vu " />
<person posts="1" size="3" who="&quot;Nathalie Barat&quot; " />
<person posts="1" size="3" who="Ian Gulliver " />
<person posts="1" size="3" who="Arne Thomassen " />
<person posts="1" size="3" who="&quot;Martin H. Kellner&quot; " />
<person posts="1" size="3" who="&quot;Jay Carlson&quot; " />
<person posts="1" size="3" who="Sunny So " />
<person posts="1" size="3" who="Chris Wedgwood " />
<person posts="1" size="3" who="James Lewis Nance " />
<person posts="1" size="3" who="&quot;David A. Bandel&quot; " />
<person posts="1" size="3" who="&quot;Peter T. Breuer&quot; " />
<person posts="1" size="3" who="&quot;Frank&quot; " />
<person posts="1" size="3" who="Martin Kellner " />
<person posts="1" size="3" who="Olaf Titz " />
<person posts="1" size="3" who="Andi Kleen " />
<person posts="1" size="3" who="&quot;Jonathan A. Davis&quot; " />
<person posts="1" size="3" who="Alexander Valys " />
<person posts="1" size="3" who="Alain ENOUT " />
<person posts="1" size="3" who="&quot;Christian Stuke&quot; " />
<person posts="1" size="3" who="John Cavan " />
<person posts="1" size="3" who="Jeff Raubitschek " />
<person posts="1" size="3" who="&quot;P.Basker&quot; " />
<person posts="1" size="3" who="Philip Blundell " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Gisle S{lensminde " />
<person posts="1" size="3" who="Stephen Rothwell " />
<person posts="1" size="3" who="Chris Evans " />
<person posts="1" size="3" who="&quot;SHRP&quot; " />
<person posts="1" size="3" who="Jeff Baitis " />
<person posts="1" size="3" who="Kip Macy " />
<person posts="1" size="3" who="Jacob Luna Lundberg " />
<person posts="1" size="3" who="Carlos Ungil Gutierrez-Rave " />
<person posts="1" size="3" who="&quot;Michael J. Maravillo&quot; " />
<person posts="1" size="3" who="David Odin " />
<person posts="1" size="3" who="Frank van Maarseveen " />
<person posts="1" size="3" who="Aki M Laukkanen " />
<person posts="1" size="3" who="Pavel Machek " />
<person posts="1" size="2" who="&quot;Nicholas Miell&quot; " />
<person posts="1" size="2" who="Tomas Pihl " />
<person posts="1" size="2" who="Marc SCHAEFER " />
<person posts="1" size="2" who="&quot;Siddharth Kashyap&quot; " />
<person posts="1" size="2" who="Chmouel Boudjnah " />
<person posts="1" size="2" who="Christopher Cradock " />
<person posts="1" size="2" who="Ville Herva " />
<person posts="1" size="2" who="Ratheesh KrishnaVadhyar " />
<person posts="1" size="2" who="Mailing List Account " />
<person posts="1" size="2" who="Oystein Viggen " />
<person posts="1" size="2" who="Daniel Kobras " />
<person posts="1" size="2" who="Jakub Jelinek " />
<person posts="1" size="2" who="Rafal Maszkowski " />
<person posts="1" size="2" who="Jeff Epler " />
<person posts="1" size="2" who="&quot;Jim Nance&quot; " />
<person posts="1" size="2" who="&quot;Brian Kircher&quot; " />
<person posts="1" size="2" who="Wes Cowley " />
<person posts="1" size="2" who="Mario Kadastik " />
<person posts="1" size="2" who="=?ISO-8859-1?Q?G=E9rard_Roudier?= " />
<person posts="1" size="2" who="Igmar Palsenberg " />
<person posts="1" size="2" who="Neil Moore " />
<person posts="1" size="2" who="Meino Christian Cramer " />
<person posts="1" size="2" who="Ben Collins " />
<person posts="1" size="2" who="Lorenzo Allegrucci " />
<person posts="1" size="2" who="Nitebirdz " />
<person posts="1" size="2" who="Zach Brown " />
<person posts="1" size="2" who="Val Henson " />
<person posts="1" size="2" who="Pau Aliagas " />
<person posts="1" size="2" who="&quot;Konstantin Knips&quot; " />
<person posts="1" size="2" who="Artur Skawina " />
<person posts="1" size="2" who="I Lee Hetherington " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Mark Stewart " />
<person posts="1" size="2" who="shiv agarwal " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Andy Henroid " />
<person posts="1" size="2" who="Paul Mackerras " />
<person posts="1" size="2" who=" (Carsten Paeth)" />
<person posts="1" size="2" who="Tino Keitel " />
<person posts="1" size="2" who="Anton Blanchard " />
<person posts="1" size="2" who="Aaron Holtzman " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="&quot;Davide Libenzi&quot; " />
<person posts="1" size="2" who="Thomas Sailer " />
<person posts="1" size="2" who="&quot;Ph. Marek&quot; " />
<person posts="1" size="2" who="Sujit Vaidya " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Douglas Gilbert " />
<person posts="1" size="2" who="Thomas Molina " />
<person posts="1" size="2" who="jschlst " />
<person posts="1" size="2" who="Velizar Bodurski " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Brian Martin " />
<person posts="1" size="2" who="&quot;Alan Curry&quot; " />
<person posts="1" size="2" who="Matti Aarnio " />
<person posts="1" size="2" who="&quot;Matthew S. Hallacy&quot; " />
<person posts="1" size="2" who="&quot;Johan Kullstam&quot; " />
<person posts="1" size="2" who="Tero Pelander " />
<person posts="1" size="2" who=" (Don)" />
<person posts="1" size="2" who="&quot;Vinodkumar Parasmal&quot; " />
<person posts="1" size="2" who="Prairie Flower " />
<person posts="1" size="2" who="&quot;Kent, Ian I.&quot; " />
<person posts="1" size="2" who="Chris Blazie " />
<person posts="1" size="2" who="Clay Claiborne " />
<person posts="1" size="2" who="Oliver Neukum " />
<person posts="1" size="2" who="Rick Hohensee " />
<person posts="1" size="2" who=" (Michael Kerrisk)" />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Jason Venner " />

</stats>

<section
  title="SPX Unfinished In Stable Series"
  subject="how about SPX ?"
  archive=""
  posts="10"
  startdate="07 Jun 2000 00:00:00 -0800"
  enddate="13 Jun 2000 00:00:00 -0800"
>

<p>Lorinczy Zsigmond got an oops trying to use <a
href="http://developer.novell.com/research/appnotes/1995/december/03/04.htm">Sequenced
Packet Exchange (SPX)</a> in 2.2.15. He posted the error and asked who the
SPX maintainer was. As far as he could tell, it hadn't been touched since
January 1999. Jay Schulist replied:</p>

<quote who="Jay Schulist">

<p>I am the maintainer, but I hardly have any time
for SPX at the moment. I would be more than happy to work with you to get it
working again.</p>

<p>Let me know if you are available to debug and test it with me.</p>

</quote>

<p>There was no reply to this, but Alan Cox replied to Lorinczy (apparently
without having seen Jay's post), confirming that SPX was broken, and didn't
seem to have a maintainer. Jeff V. Merkey volunteered, with, <quote
who="Jeff V. Merkey">To whomever is attempting to use SPX, please forward me
the Ooops info, and I'll attempt to take a look at it and fix it. The
current SPX engine in Linux is incomplete, but I am willing to take a stab
at looking at the bugs. Alan -- I'll try to help keep it current.</quote>
Alan replied with his assessment, saying, <quote who="Alan Cox">Finish
writing it is closer. The connection accept logic for example is entirely
ficticious ;)</quote></p>

<p>Jeff replied that he'd be happy to do a full SPX implementation, with
NetWare-compatible APIs; and added that he'd done it on three other OSes as
well. But H. Peter Anvin warned, <quote who="H. Peter Anvin">Note that we
already have a socket-compatible interface, which is the interface of
choice. A NetWare-compatible API should be done as a user-space
library.</quote> He went on, though:</p>

<quote who="H. Peter Anvin">

<p>However, would certainly appreciate your help in
getting the IPX/SPX implementation cleaned up and improved -- it clearly has
been suffering from neglegt/disuse -- and to get that user-space library
written!</p>

<p>This, combined with your NWFS implementation, should make Linux pretty much
a drop-in replacement for NetWare, I'm guessing.</p>

</quote>

<p>There was no reply, but elsewhere and a week later Jeff reported briefly,
<quote who="Jeff V. Merkey">I'm going through this code in detail now.
Packet burst isn't working correctly either.</quote></p>

</section>

<section
  title="Linux 2.5 To Do List Looks For Web Server Space"
  subject="Linux 2.5 TODO on the web"
  archive=""
  posts="10"
  startdate="08 Jun 2000 00:00:00 -0800"
  enddate="14 Jun 2000 00:00:00 -0800"
>

<mention>Bartlomiej Zolnierkiewicz</mention>
<mention>Gary Lawrence Murphy</mention>
<mention>Kenneth C. Arnold</mention>

<p>Kenneth C. Arnold posted a URL to the <a
href="http://kena.8k.com/linux-kernel/">2.5/2.6 To Do List</a>. But he
replied to himself about an hour and a half later, to explain the "404"
error some folks had been getting from the server. Apparently the host
company had HTML requirements, so that banner ads could be displayed
automatically on the page. Since the To Do list was in plain text, several
different browsers were running up against this wall. Bartlomiej
Zolnierkiewicz commented unhappily that the wrapper page could list all
"broken" browsers, but Alan Cox replied, <quote who="Alan Cox">It isnt a
'broken' browser. Its a correctly implemented browser. Referrer is an
unacceptably flawed privacy problem. Good tools do not send referrer
entries.</quote> James Sutherland replied historically:</p>

<quote who="James Sutherland">

<p>Mozilla dropped this entry from their request
headers for a while, until they discovered that broke too many WWW sites,
when they had to put it back in. (According to one of the developers, they
had been trying to make requests as small (=> fast) as possible, but been a
little overzealous.)</p>

<p>One of the privacy settings available in Squid is to strip out these header
fields. They do make special mention of User-Agent, since enough sites
modify the results based on which browser you are using, but last time I
looked, Referer wasn't mentioned.</p>

<p>Maybe if enough people report this to FreeServers as being a problem,
they'll fix it?</p>

</quote>

<p>Elsewhere, Matthias Andree interjected, <quote who="Matthias Andree">Fuck
it! If they want to give me their information only if I sell my privacy for
marketing or advertising sake, I give a shit. Please move the information
elsewhere. Espionage as industry standard? How deep have we fallen? The
marketing dudes everywhere plug the fingers in your asses and you are
considering which browser works and which fails. That's the wrong approach.
Unregister that stuff and place it elsewhere.</quote> He offered to host it
on his own web site, so long as it stayed smaller than 64K. James also
offered 10M of web space. Gary Lawrence Murphy also offered to host the To
Do list, if Kenneth didn't mind banner ads for other GPLed projects.</p>

</section>

<section
  title="Stallman Advocates &quot;MSDOS-Style Floppy Handling&quot;"
  subject="Floppy handling"
  archive=""
  posts="64"
  startdate="08 Jun 2000 00:00:00 -0800"
  enddate="18 Jun 2000 00:00:00 -0800"
>

<mention>Adam Sampson</mention>

<p>Richard M. Stallman requested:</p>

<quote who="Richard M. Stallman">

<p>Is there any possibility of making Linux
handle file systems on floppies like MSDOS, so that there is no need to
explicitly mount and unmount a floppy drive in order to access floppies
through the file system?</p>

<p>Because of the inconvenience of mounting and unmounting floppies, I never do
that; I only use mcopy. mcopy is covenient enough, for people who don't mind
learning another few commands. But that isn't very easy for non-hackers, the
kind of people who now prefer Windows. A complaint from a non-hacker about
this is what inspired me to write this message.</p>

<p>We want to make GNU/Linux appeal to Windows users, and this is one of the
things necessary to do that. And if MSDOS could do this, surely we
can.</p>

</quote>

<p>There were a number of replies, and a couple longer threads. Adam Sampson
suggested that Stallman's feature could be implemented via a user-space
filesystem. But he acknowledged that Linux currently had no interface for
such a thing, although 'podfuk' worked by emulating the userspace portion of
a networked filesystem.</p>

<p>Elsewhere, Ian McKellar mentioned he'd been working on implementing MSDOS
filesystem support in the GNOME Virtual Filesystem layer. But Richard
replied, <quote who="Richard M. Stallman">Despite my loyalty to GNOME (as a
part of the GNU Project), on technical grounds I have to disagree. File
access needs to be available to all the programs on the system, and the only
natural way to do that is through the kernel and the C library. Doing this
in GNOME will produce a feature that half-works, which means it will appear
to the users as an unreliable feature.</quote> Ian ended the subthread with,
<quote who="Ian McKellar">I sort of agree with you on this, but you can
extend this argument to just about any feature of a non-core library. In GTK
we implement widgets which the X libraries don't. This leads to user
interface inconsistencies. In gnome-vfs we support remote filesystems which
libc doesn't. This leads to inconsistent filesystem handling between
applications.</quote></p>

<p>Alex Buell also replied to Richard's initial request, saying, <quote
who="Alex Buell">Over my dead body, mate. There's the mtools package to do
this anyway, and RH 6.x defaults to non-root users mounting /dev/fd0. I
don't see why we have to bend over backwards when it's better for them to
learn to get to grips with UNIX rather than be cosseted with historical MS
crud. Even CP/M needed to mount floppies.</quote> Richard replied in all
seriousness, <quote who="Richard M. Stallman">I do plan to try to find
someone to implement this fully, but I think it would be unfortunate if your
death were the result. I hope you will find the courage to keep on living
despite the existence of this feature.</quote></p>

<p>Alan Cox also replied to Richard's initial request, suggesting 'supermount'
as a possibility. But he added, <quote who="Alan Cox">It needs more hands to
port it to 2.3.x and it needs a very good review of the code to fix
remaining questionable habits (or rewriting as a stackable fs). The stuff
needed is out there however.</quote> Jeff Garzik gave a historical overview:</p>

<quote who="Jeff Garzik">

<p>Porting supermount from 2.0.x to 2.2.x was a
cosource.com project, undertaken by Alexis Milhailov. He also ported it to
2.3.x. Unfortunately the web page where supermount is supposed to be located
doesn't resolve (<a
href="http://supermount.cornpops.cx/">http://supermount.cornpops.cx/</a>)</p>

<p>I uploaded the latest I have, against 2.3.99-pre5, at <a
href="http://gtf.org/garzik/kernel/files/supermount-0.3.1-2.3.99-pre5.diff.gz">http://gtf.org/garzik/kernel/files/supermount-0.3.1-2.3.99-pre5.diff.gz</a></p>

<p>It definitely needs review, especially by the original SuperMount author
(sct?) Al Viro looked at one version of the patch and worried about
races.</p>

</quote>

<p>There were several other threads in which 'supermount' came up as the
solution to Richard's problem, and Richard eventually said, while discussing
a different possible solution, <quote who="Richard M. Stallman">Supermount
seems to come closer to what I had in mind, and maybe could do the job. But
some people say it is not reliable. If it is made reliable and gets included
as a standard part of Linux, maybe it will do the job.</quote></p>

</section>

<section
  title="Linus On Micro-Kernels"
  subject="linux and micro kernel"
  archive=""
  posts="39"
  startdate="09 Jun 2000 00:00:00 -0800"
  enddate="14 Jun 2000 00:00:00 -0800"
>
<topic>Microkernels</topic>

<mention>Matthew Wilcox</mention>
<mention>Val Henson</mention>

<p>Tonglu Yi asked if Linux might become micro-kernel-based in the future. Val
Henson gave a pointer to <a href="http://www.tux.org/lkml/#s1-5">the
FAQ</a>, and to <a href="http://os.inf.tu-dresden.de/pubs/sosp97">Liedtke's
L4Linux paper</a>. Most replies indicated very slim chances for this, and at
some point in the discussion, Matthew Wilcox tried to remember a quote by
Linus Torvalds on the subject, and someone else found it in the archives.
Linus had said, <quote who="Linus Torvalds">message passing as the
fundamental operation of the OS is just an excercise in computer science
masturbation. It may feel good, but you don't actually get anything
DONE.</quote> For Linus' full quote (it's long) and a summary of the thread
in which it came up, see <kcref subject="Some very thought-provoking ideas
about OS architecture." startdate="20 Jun 1999 00:00:00 -0800"></kcref><!--
kt19990701_25.html#4 -->.</p>

</section>

<section
  title="Putting Restrictions On Untrusted Code"
  subject="Running Untrusted Code in a Restricted Process"
  archive=""
  posts="18"
  startdate="09 Jun 2000 00:00:00 -0800"
  enddate="16 Jun 2000 00:00:00 -0800"
>
<topic>User-Mode Linux</topic>

<mention>Alan Cox</mention>
<mention>Pavel Machek</mention>

<p>Jesse Hammons (working off the 2.2.12 kernel) made his first ever post to
linux-kernel, in which he proposed a way to restrict the system calls an
untrusted binary could make. Someone gave a link to an <a
href="http://research-cistw.saic.com/cace/">overview of various access
control systems</a>, and someone else gave a pointer to the <a
href="http://medusa.fornax.sk/">Medusa</a> project.</p>

<p>Jeff Dike said that a dedicated sandbox arrangement would probably be better
than Jesse's proposal; and gave a pointer to his <a
href="http://user-mode-linux.sourceforge.net">user-mode linux</a> kernel
port, adding, <quote who="Jeff Dike">It gives you a virtual machine whose
disk space consumption, cpu consumption, memory comsumption, and network
traffic can be completely controlled. Plus, it's all in user-space. Nothing
needs to be added to the kernel at all.</quote> Jesse agreed that uml did
sound better than what he'd envisioned, and asked if any resource stats were
available. Jeff replied:</p>

<quote who="Jeff Dike">

<p>No good ones at this point.  The user-space kernel is
larger than a native one, but I haven't added much code to it, so I imagine
that I've done some stupid code-bloating things. After I look for them and
fix them, I imagine that it will be comparable to a native kernel. So, I
would look at the size of a native kernel, and I think that will in the
ballpark of what you can expect to see.</p>

<p>Also, if you care enough about something to stick it in a virtual machine, a
couple of megs is probably not a big deal. If it is, and you have a bunch of
things that need to live in virtual machines, you can make them all live in
the same one, where they can all infect each other with viruses and send
love notes to each other :-)</p>

</quote>

<p>In the same post, he added, <quote who="Jeff Dike">this is somewhat more
resource-intensive than other sandboxes, but it's also more secure.</quote></p>

<p>In the midst of replying to Jeff on other levels, Jesse suggested:</p>

<quote who="Jesse Hammons">

<p>I hope it doesn't sound silly to say this but
assuming just for a moment that I could compile this sucker on say, windows
(maybe using cygwin32), and reimplement the part that does system calls in
terms of windows system calls, could this be used to run sandboxed linux
(elf) plugins on windows as well? *That* would be cool.</p>

<p>I guess you would need a way to trap system calls from the windows OS.  I
don't know if they provide that facility.</p>

</quote>

<p>Jeff replied that he'd heard the Windows-port suggestion before, and added,
<quote who="Jeff Dike">You could do that. Apparently, 95 doesn't have the
capabilities needed, 98 is iffy, and NT seems to be ok. If you're (or anyone
else is) interested in this, let me know, and I'll point you to the (scanty)
information I have on doing a Windows port.</quote> As far as the specific
ability to trap system calls, he repeated, <quote who="Jeff Dike">NT
supposedly has the ability to do that, as well as the mmap stuff that's
needed.</quote> The subthread ended there.</p>

<p>Elsewhere, Brian Gerst pointed out that Jesse's original proposal could
already be done under Linux using the ptrace() system call. He explained,
<quote who="Brian Gerst">Ptrace can intercept system calls made by the
traced process (strace uses this) and can modify or deny them.</quote> Jesse
checked this out, and found that this was true for 2.3.x, but not for the
kernel he was using (2.2.12). Alan Cox replied that the functionality was
indeed in 2.2.x, but Jeff clarified, <quote who="Jeff Dike">For the record,
this was added in 2.3.22 and 2.2.15 for i386.</quote></p>

<p>Elsewhere but still on 'ptrace', David A. Wagner said, <quote who="David A.
Wagner">As others have noted, you can use ptrace() to selectively deny
syscalls. See <a
href="http://www.cs.berkeley.edu/~daw/janus/">http://www.cs.berkeley.edu/~daw/janus/</a>
for an implementation that used this idea in a more general context.</quote>
And Jeff replied, <quote who="Jeff Dike">And see Pavel Machek's site (<a
href="http://atrey.karlin.mff.cuni.cz/~pavel/dipl/eng.html">http://atrey.karlin.mff.cuni.cz/~pavel/dipl/eng.html</a>)
for how Janus (and any other ptrace syscall filterer) can be faked out. Plus
a bunch of other sandbox possibilities.</quote></p>

</section>

<section
  title="Some Debate Over POSIX And Symlinks"
  subject="[BUG] Kernel 2.4.0-test1-ac10 changes open of symlink behavior."
  archive=""
  posts="29"
  startdate="11 Jun 2000 00:00:00 -0800"
  enddate="19 Jun 2000 00:00:00 -0800"
>
<topic>BSD</topic>
<topic>POSIX</topic>

<mention>Daniel Pittman</mention>

<p>Under the most recent 2.4.0test-* kernels, Daniel Pittman found that trying
to edit files through a symlink would give an ENOENT error when he tried to
save to disk. Under 2.2.15, he could save just fine. He explained that at
the time of editing, the symlink pointed to a nonexistant file; but his
understanding was that the referenced file should be created automatically
in that circumstance. Andries Brouwer agreed, and quoted the new POSIX
draft, "In general the open() function follows the symbolic link if path
names a symbolic link." But Alexander Viro replied, <quote who="Alexander
Viro">Excuse me, but I'll take difference from POSIX over a bunch of very
real races, thank you very much. Again, feel free to propose race-free
implementation if you want that thing back. Until then O_CREAT without
O_EXCL will return -ENOENT on broken symlinks. Userland should not rely on
objects' creation/removal following symlinks. Period.</quote> But Alan Cox
replied in turn, <quote who="Alan Cox">POSIX says otherwise. Period
;)</quote> Alexander replied that for this particular case, <quote
who="Alexander Viro">POSIX draft is broken and we would be better off fixing
that bug instead of casting it in stone. Behaviour in question is
inconsistent with every other case when links are
created/removed/renamed.</quote> Alan suggested, <quote who="Alan Cox">You
might want to take that up with the relevant posix committee then.</quote></p>

<p>Ulrich Drepper replied, <quote who="Ulrich Drepper">Symlinks are not in the
current POSIX standard and therefore the existing POSIX standard is OK.
Symlinks are coming in the next revision of the standard as an option (due
to the merging with the Unix specs). If you find something inadequate in the
Austin group draft tell me what it is and a solution for it. I'll make sure
it gets handled in the next meeting.</quote> Alexander proposed:</p>

<quote who="Alexander Viro">

<p>Case in question: foo/bar/baz being a dangling
symlink, open() with O_CREATE applied to it. Behaviour mandated by the
draft: create a file in place where symlink points to. Problem: it is wildly
inconsistent with every other case when we create/remove/rename objects. In
every other case it's "you've got foo/bar/baz, you either
create/remove/rename the entry 'baz' in directory 'foo/bar' or fail". Here
the operation is applied to directory potentially different from the
foo/bar.</p>

<p>Proposed (minimal) change: "Portable programs can not rely on
open()/create() following dangling links. It should not be confused with
O_EXCL semantics - there we refuse to follow _any_ symlinks, as well as open
existing files."</p>

<p>In other words, proposed semantics looks so:</p>

<p>

<ol>

<li>Broken symlinks are never followed.</li>

<li>Normal symlinks are followed unless we have O_NOFOLLOW</li>

<li>If O_EXCL is passed we refuse to open existing file, be it a result of
following a symlink or not.</li>

</ol>

</p>

</quote>

<p>Andries said that the behavior Alexander was complaining about was the
standard path resolution for symlinks; and guessed Alexander hadn't read the
POSIX drafts. He quoted POSIX at length, and Alexander replied, <quote
who="Alexander Viro">Lovely. IOW, draft sucks badly for mkdir() too - AFAICS
with security consequences. And makes 4.4BSD, Solaris and Linux
non-compliant in bargain. mkdir() on a dangling symlinks does not follow
links on any of these systems.</quote> Andries replied, <quote who="Andries
Brouwer">Why don't you get the text yourself and read it, before shouting
wildly? Concerning mkdir() I can reassure you. Quoting from the mkdir()
section: "If path names a symbolic link, mkdir() shall fail and set errno to
EEXIST".</quote></p>

<p>The subthread ended there, but elsewhere Andries gave pointers to <a
href="http://www.opengroup.org/austin/">The Austin Common Standards Revision
Group</a>, also to a <a
href="http://www.opengroup.org/austin/docs/austin_9r6.txt">Long Description
of the Proposed Common Standards Revision Project</a>, and finally <a
href="http://www.opengroup.org/austin/lists.html">the Austin Group's mailing
list page</a>.</p>

</section>

<section
  title="Attempt At New Slab Allocator"
  subject="New slab allocation (pre-alpha)"
  archive=""
  posts="5"
  startdate="11 Jun 2000 00:00:00 -0800"
  enddate="15 Jun 2000 00:00:00 -0800"
>
<topic>SMP</topic>

<p>Mark Hemment announced:</p>

<quote who="Mark Hemment">

<p>For the last few months, I've been working (on and
off) on a replacement for my implementation of the Slab allocator.</p>

<p>  The new allocator has the features;</p>

<p> 
<ol>

<li>Designed with SMP in mind.<br />

          The allocator has "clips", which are per-cpu lists of objects
          without locks. To allow support for large clips and good slab
          reaping, the objects in the clips can be unloaded back into their
          slabs.</li>
 
<li>Support for different types of memory.<br />

          Previously, DMA support was a "kludge"! The new design supports
          subcaches. Each cache has subcaches for the type of memory it
          supports. Currently, only two types of memory are supported;
          NORMAL and DMA. A better name might be zone-caches - matching the
          2.4.x page types.</li>

<li>Better object packing.<br />

          Yet another object packing method has been added.  This can
          increase the number of objects per slab with on-slab bufctls. All
          with reduced branching on the allocation/release paths!</li>

<li>Page allocator friendly.<br />

          Always tries to use zero-order page sized slabs, even if it causes
          memory to be wasted. A bit of waste is better than order-1 page
          allocations!</li>

<li>Ability to destroy caches cleanly.<br />

          Well, it will be "clean" when I finish it off and tidy the code
          up. The "cleaniess" refers to not having to continiously hold a
          lock to prevent a cache being destroyed (removing scalability
          bottlenecks on SMP). This will probably panic/lockup your machine
          at the moment.</li>

<li>Ability to add new general size caches on the fly.<br />

          This is coded, but never tested.  Again, will probably cause a
          panic/lockup. To avoid having to lock the general cache linkage
          for SMP (searched from a kmalloc(), so a lock would be bad), some
          "tricks" are pulled.</li>

<li>Cleaner code.<br />

          It will be - eventually. For now, some comments are correct, some
          aren't, and some are missing.</li>

<li>Some more stuff.</li>

</ol>

</p>

<p>  At present, the code is for 2.2.15 only and is pre-alpha quality. I might
  decide to re-design it tomorrow if I think of something better.</p>

<p>  I will soon be moving to 2.4.x - infact, I will need to when finalising
this. The page structures aren't cached aligned in 2.2.x, so the slab's
internal usage of this structs' members may well cross L1 cache lines (not
good for performance).</p>

<p>  This code has only been run on an UP box.</p>

<p>  I don't have access to an MP box, but hope to by next weekend.  Note; the
MP code uses different methods to add general size caches, and to empty
clips - none of which can be easily tested on UP (even running an MP kernel
on UP doesn't help much). MP owners, bewarned.</p>

<p>  A patch is available at;</p>

<p>        <a href="http://www.nextd.demon.co.uk/slab.01.patch">http://www.nextd.demon.co.uk/slab.01.patch</a></p>

<p>  Or to just view the allocator's source;</p>

<p>        <a href="http://www.nextd.demon.co.uk/slab.c">http://www.nextd.demon.co.uk/slab.c</a><br />
        <a href="http://www.nextd.demon.co.uk/slab.h">http://www.nextd.demon.co.uk/slab.h</a></p>

<p>  Hopefully, I've loaded up the latest version. :(</p>

</quote>

<p>There were a couple replies, but no real discussion.</p>

</section>

<section
  title="NFSv3 In The Stable Series: The Saga Continues"
  subject="Linux 2.2.17pre1"
  archive=""
  posts="12"
  startdate="11 Jun 2000 00:00:00 -0800"
  enddate="14 Jun 2000 00:00:00 -0800"
>
<topic>FS: NFS</topic>
<topic>Kernel Release Announcement</topic>

<mention>Paul Jakma</mention>

<p>Alan Cox announced 2.2.17pre1, adding, <quote who="Alan Cox">I'm going for
stabilising the oddments 2.2.16 got a bit wrong before we move onwards. This
even though a pre patch should be somewhat more solid than 2.2.16.</quote>
Matthias Andree asked if NFSv3 might get into 2.2.18, and Paul Jakma was
also hopeful. For more on the ongoing saga of NFSv3 in the stable series,
see <kcref subject="linux nfsv3 client?" startdate="21 Mar 2000 00:00:00 -0800"></kcref><!--
kt20000403_61.html#14 -->.</p>

<p>Alan replied, <quote who="Alan Cox">Various bits are going on. It may be in
.17. Just for the moment .17 is the bug fixes.</quote> Matthias said, <quote
who="Matthias Andree">I got the imagination you were planning 2.2.17 as
bugfix-2.2.16-only release.</quote> And Alan corrected, <quote who="Alan
Cox">For the moment Im putting in the bug fix patches. What happens then
depends how many and how serious.</quote></p>

</section>

<section
  title="Developers Discuss Microsoft"
  subject="Ballmer speaks a truth"
  archive=""
  posts="8"
  startdate="11 Jun 2000 00:00:00 -0800"
  enddate="16 Jun 2000 00:00:00 -0800"
>
<topic>Microsoft</topic>
<topic>Patents</topic>

<p>There was a bit of revelling this week, starting when Rick Hohensee gave:</p>

<quote who="Rick Hohensee">

<p>"So far, Linux doesn't have a lot of traction on
the client [Microsoft-ese for desktop computers], except in some university
environments."</p>

<p>Steve Ballmer of Microsoft, as quoted and remarked by John Schwartz in the
Washington Post, June 11 2000</p>

</quote>

<p>Brandon S. Allbery replied with a smirk, <quote who="Brandon S.
Allbery">Heh.  We *are* pissing them off.  Good.  :)</quote> And Rik van
Riel said with a grin:</p>

<quote who="Rik van Riel">

<p>It must be worrying for MS how much Linux has
increased in popularity. I believe we've gone from "Linux will never be
successful" to the above "Linux isn't successful yet" in just about one year
... :)</p>

<p>Kind of worrysome that even MS is admitting the success of Linux :) (outside
of their legal arguments)</p>

</quote>

<p>James Simmons mentioned hearing that, <quote who="James Simmons">M$ in
retaliation to the DJ will release advance technology they have been keeping
from the people to wipe out their competitors. According to M$ linux will be
gone in a year if they do this.</quote> David Ford replied, <quote
who="David Ford">Considering the past history of 'innovation', we already
have this 'new technology'. And to m$ wiping out Linux.. a) can't happen and
b) is pretty darn funny thinking 'bout it.</quote> Richard Torkar let his
fiendish laugh be heard, <quote who="Richard Torkar">*muahahahahahahahaha*
Since when has MS come up with an innovation?</quote> And Andrew Sharp
added, <quote who="Andrew Sharp">Reality check...since when would M$ have
EVER held back a technology that would do harm to their competitors? If the
2000 programmers Microserf has assigned to writing a Linux virus had
anything ready to go, they wouldn't be "holding it back."</quote> Ricky Beam
answered the question of Microsoft's most recent innovations, estimating:</p>

<quote who="Ricky Beam">

<p>About 20 years ago.  The wave they think they are
riding evaporated long ago. Let's see, they bitch about linux being "based
on 30yr old technology" -- they seem to forget how old MS-DOS, windows, and
NT are and how much of the same "30yr old tech" they've adopted -- but very
recently Microsoft gave windows the same capabilty UNIX has had for "ever"
-- probablly only because 3rd parties are making money selling such
capabilities.</p>

<p>I am, of course, referring to "Terminal Server" and "X"... X has had the
ability to have it's API calls sent to any display from the first line of
code.</p>

<p>Billy boy can say what ever he wants.  There's two decades of evidence of
his greed -- you should buy everything from Microsoft... There are too many
cases to count of Microsoft ignoring various laws and IP -- patents,
copyrights, out-right theft of technology...</p>

</quote>

</section>

<section
  title="Developer Philosophy: Quietly Breaking Hardware Ports In Unstable Series"
  subject="Linux 2.4.0-test1-ac16"
  archive=""
  posts="18"
  startdate="12 Jun 2000 00:00:00 -0800"
  enddate="16 Jun 2000 00:00:00 -0800"
>
<topic>Assembly</topic>
<topic>I2O</topic>
<topic>Kernel Release Announcement</topic>
<topic>SMP</topic>

<mention>Tigran Aivazian</mention>
<mention>Arnaldo Carvalho de Melo</mention>
<mention>Mike Phillips</mention>
<mention>Ingo Molnar</mention>
<mention>David Woodhouse</mention>
<mention>Russell King</mention>
<mention>Richard Torkar</mention>
<mention>Ben LaHaise</mention>
<mention>Chris Ricker</mention>

<p>Alan Cox announced 2.4.0-test1-ac16:</p>

<quote who="Alan Cox">

<p>These patches are versus 2.4.0-test1 from your
favourite kernel mirror (<a
href="ftp://ftp.us.kernel.org/pub/linux/kernel/v2.4.0">ftp.us.kernel.org:/pub/linux/kernel/v2.4.0</a>).
The patches are in <a
href="ftp://ftp.us.kernel.org/pub/linux/kernel/people/alan">/pub/linux/kernel/people/alan</a>.</p>

<p>James Cloos is maintaining diffs between -ac versions at<br />
        &lt;<a href="http://jhcloos.com/pub/linux-2.4.0-test1-ac/">http://jhcloos.com/pub/linux-2.4.0-test1-ac/</a>&gt;<br />
        &lt;<a href="ftp://jhcloos.com/pub/linux-2.4.0-test1-ac/">ftp://jhcloos.com/pub/linux-2.4.0-test1-ac/</a>&gt;</p>

<p>2.4.0-test1-ac16</p>

<p>

<ol>

<li>Squash PSN on the Transmeta CPU too | Not sure if its needed but..            (me)</li>

<li>Small shmiq driver optimisation                 (Tigran Aivazian)</li>

<li>Updates for arch/arm                            (Russell King)</li>

<li>Fix drivers/char/Makefile for arm               (Russell King)</li>

<li>Fix etherh driver for 8390 changes              (Russell King)</li>

<li>Update ARM docs/Configure.help                  (Russell King)</li>

<li>Fix docs references in config.in files  (Andrzej M. Krzysztofowicz)</li>

<li>Bring UDF into line with the inode wait flags   (Jens Axboe)</li>

<li>Fix a couple of CD driver bugs                  (Jens Axboe)</li>

<li>tdfxfb fixes for flicker and for cursor         (Alexander Lukyanov)</li>

<li>Update Changes file                             (Chris Ricker)</li>

<li>Fix potential buffer handling overrun with 512 byte blocks                                 (Ben LaHaise)</li>

<li>Fix a small glitch in an i2o timeout            (Steve Ralston)</li>

<li>Fix warnings in vesafb                  (Arnaldo Carvalho de Melo)</li>

<li>Large raid patch update                         (Ingo Molnar)</li>

<li>Fix missing blk_cleanup_queue on loop           (Jens Axboe)</li>

<li>Fix races in exec handling                      (Al Viro)</li>

</ol>

</p>

</quote>

<p>Mike Phillips replied that item 9 (Fix a couple of CD driver bugs) broke the
compile by removing the CDROM_CAN macro definition, and Richard Torkar
confirmed the breakage using 'gcc' 2.95.1; Jens Axboe replied, <quote
who="Jens Axboe">Yup, pretty stupid error on my part, don't know how that
macro disappeared. Just reverse that part of the patch, Alan already has a
fix.</quote></p>

<p>Peter Rival reported that both ac15 and ac16 would hang his Alpha ES40,
right after enabling swap. David Woodhouse confirmed a similar problem on
his ia32 SMP, though it was not repeatable, and happened on 2.3.99pre8 and
2.4.0test1-ac12.</p>

<p>Jim Barriault reported that ac16 and ac17 (apparently available by the time
he posted) would both give compiler errors on his DS20, and Alan replied,
<quote who="Alan Cox">All the non x86 platforms got broken by the ptrace
change. This fixes an ugly kernel race and needs asm level changes for the
other platforms. Painful but important to do.</quote> Ed Carp chastized:</p>

<quote who="Ed Carp">

<p>An extremely shortsighted thing to do.  The x86
platform isn't the only platform that runs Linux, and these sorts of changes
should be done for ALL platforms at once, rather than fixing "ugly" kernel
stuff (which should've been fixed before anyway) at the expense of non-x86
platforms.</p>

<p>Then again, since it's Alan's personal release, maybe it doesn't matter, as
long as it gets fixed for all platforms by the time that 2.4 gets kicked out
the door.</p>

</quote>

<p>There were three replies to this. Matthew Wilcox said, <quote who="Matthew
Wilcox">you don't understand. this is the normal way of doing changes which
require assembly or machine-specific changes. break the build on those
architectures then the port maintainers notice immediately and fix
them.</quote></p>

<p>Alan also replied to Ed, <quote who="Alan Cox">Tough. Its up to you to fix
the other platforms. Its always worked like this. I am not playing nanny and
co-ordinator to all the port maintainers. It broke the PPC and Alpha folks
have updated their ports. Either fix the sparc one or wait until someone
does. If I wait for all the maintainers then everyone suffers. If we break
ports now and then most of them don't.</quote> Ed replied, <quote who="Ed
Carp">In other words, Alan tells the non-x86 folks that they can (in the
words of one of my favorite movies) "all line up and kiss his ass!"
ROFL!</quote> And in the same post, he went on, <quote who="Ed Carp">Oh,
pretty please, DOCUMENT THE ASM CHANGES so we don't have to figure out what
the hell you did to fix it? I hate to be a pain in the ass and scream yet
again about kernel docs, but it really needs to be done if people want to
consider themselves professional programmers working on a system they want
to be accepted by the mainstream. It also makes porting code to other
platforms A LOT LESS PAINFUL. See, one of my clients is this really big
hardware company and I'd really like them to continue down the Linux road,
but it's a tough sell if the technical gang tells them that VxWorks or PsOS
is a lot better because they're designed to be relatively easy to port to
other platforms.</quote> To this last, Matthew replied, <quote who="Matthew
Wilcox">that's bollocks. who told you to use the latest development kernel?
would you go to VxWorks, demand the latest nightly snapshot of their build
and judge them on that? just because the latest snapshot of linux is
available to you, doesn't mean we recommend it.</quote> And to the idea of
Alan telling the non-x86 folks to kiss his ass, Matthew said, <quote
who="Matthew Wilcox">you'd prefer alan to guess what the correct sparc,
mips, ppc, arm, s/390, m68k, alpha and parisc asm code is? or ship a kernel
with a known security hole? or not ship a kernel at all for weeks until all
the port maintainers have had enough time to submit changes? face it, this
is the only way to work. and you're the only one who has a problem with
it.</quote></p>

<p>Peter also replied to Ed's initial post, <quote who="Peter Rival">it's
already been fixed for Alpha, and I believe sparc &amp; sparc64 either work
or almost work now as well. What is _really_ annoying is when there are
releases put out where nobody says anything about non-x86 ports being broken
until someone complains and then the reaction is "oh yeah, we knew about
that". I'm not complaining, it's just frustrating when I'm trying to get
work done and I have to waste time trying to update to a release that is
known at release time not to work.</quote> In the same post, he requested,
<quote who="Peter Rival">Alan - any chance we could get a list of things
known to be broken/not to work added to the 2.4.0test-acXX release
announcements? I don't care that things get broken, I'd just like to not
have to find it out if people already know. Or, smack me in the head and
tell me "moron, things are always documented - look here". Either way - I'm
not offended... ;)</quote> Alan replied that there would be so much to
report, that he'd have to gzip his posts. But he also pointed out where the
release notes had said "Fix ptrace races | may need tweaks for non x86". And
Peter concluded the thread with, <quote who="Peter Rival">Good 'nuff - my
bad. I just didn't realize that "may need tweaks" could also mean "doesn't
build". I'm just gonna shut up now and try to find some more caffeine.
:)</quote></p>

</section>

<section
  title="Developers Argue Over Virtual Memory: 'classzone' Vs. 'strict zone'"
  subject="[patch] improve streaming I/O [bug in shrink_mmap()]"
  archive=""
  posts="31"
  startdate="12 Jun 2000 00:00:00 -0800"
  enddate="15 Jun 2000 00:00:00 -0800"
>
<topic>Virtual Memory</topic>

<mention>Stephen C. Tweedie</mention>

<p>The discussion started peacefully enough. Zlatko Calusic posted a one-liner
to fix a long-standing problem in the virtual memory system. He explained,
<quote who="Zlatko Calusic">While searching for a discardable page in
shrink_mmap() Linux was too easily failing and subsequently falling back to
swapping. The problem was that shrink_mmap() counted pages from the wrong
zone, and in case of balancing a relatively smaller zone (e.g. DMA zone on a
128MB computer) "count" would be mistakenly spent dealing with pages from
the wrong zone. The net effect of all this was spurious swapping that hurt
performance greatly.</quote> Stephen C. Tweedie was impressed, and added
that Zlatko's bug might be the same thing causing the excessive CPU usage
recently reported. For more on this, see <kcref subject="[PATCH]
2.3.99-pre6-3+  VM rebalancing" startdate="22 Apr 2000 00:00:00 -0800"></kcref><!--
kt20000507_66.html#3 -->, also <kcref subject="[PATCH] Recent VM fiasco -
fixed" startdate="08 May 2000 00:00:00 -0800"></kcref><!-- kt20000522_68.html#5 -->, and
<kcref subject="kswapd fixes anywhere?" startdate="16 May 2000 00:00:00 -0800"></kcref><!--
kt20000529_69.html#6 -->. Classzone had a brief mention in <kcref
subject="Linux 2.3.99pre9-2 JOB list" startdate="18 May 2000 00:00:00 -0800"></kcref><!--
kt20000605_70.html#2 -->, and there was a brief exchange in <kcref
subject="classzone-31" startdate="03 Jun 2000 00:00:00 -0800"></kcref><!--
kt20000619_72.html#6 -->.</p>

<p>Rik van Riel, the main VM maintainer, agreed with Stephen, and added that
only one known bug remained with the current 'shrink_mmap()'. Andrea
Arcangeli, author of the classzone patch (the only patch confirmed to solve
the 'kswapd of death' problem), also replied to Stephen. He remarked that
the "strict zone" approach preferred by Rik and others, would have higher
loads anyway just by its nature. He described an exploit, <quote who="Andrea
Arcangeli">You boot, you allocate all the normal zone in cache doing some fs
load, then you start netscape and you allocate the lower 16mbyte of RAM into
it, then doing some other thing you trigger kswapd to run because also the
lower 16mbyte are been allocated now. Then netscape exists and release all
the lower 16m but kswapd keeps shrinking the normal zone (this shouldn't
happen and it wouldn't happen with classzone design).</quote> He went on,
<quote who="Andrea Arcangeli">I think Linus's argument about the above
scenario is simply that the above isn't going to happen very often, but how
can I ignore this broken behaviour? I hate code that works in the common
case but that have drawbacks in the corner case. It would be better if I
wouldn't know what the current code is doing, then I could accept it more
easily.</quote></p>

<p>Rik agreed that there was a theoretical load increase, but that it was
balanced out by other benefits. He went on:</p>

<quote who="Rik van Riel">

<p>Let me summarise the drawbacks of classzone and
the strict zone approach:</p>

<p>Strict zone approach:</p>

<p>

<ul>

<li>use slightly more memory, on the order of maybe 1 or 2%</li>

<li>use slightly more kswapd cpu time since the free page goals are
stricter</li>

</ul>

</p>

<p>Classzone:</p>

<p>

<ul>

<li>can easily run out of 2- and 4-page contiguous areas of free memory in
the normal zone, leading to the need to do allocation of task_structs and
most slab caches from the dma zone</li>

<li>this in turn will lead to the dma zone being less reliable when we need
to allocate dma pages, or to a fork() failing with out of memory once we
have a lot of processes on very big systems</li>

</ul>

</p>

<p>Here you'll see that both systems have their advantages and disadvantages.
The zoned approach has a few (minimal) performance disadvantages while
classzone has a few stability disadvantages. Personally I'd chose stability
over performance any day, but that's just me.</p>

<p>The big gains in classzone are most likely from the _other_ changes that are
somewhere inside the classzone patch. If we focus on merging some of those
(and maybe even improving some of the others before merging), we can have a
2.4 which performs as good as or better than the current classzone code but
without the drawbacks.</p>

</quote>

<p>Andrea replied point-by-point, disagreeing with the drawbacks Rik found with
classzone. He argued that it was strict zone, and not classzone, that had
the incorrect behavior. He put it, <quote who="Andrea Arcangeli">Classzone
provides the correct behaviour but at a potentially major fixed cost during
allocations/deallocations and the lock is not per-zone anymore. However this
additional information that we collect we'll avoid us to waste CPU and
memory so it's not obvious that classzone will decrease performance.</quote></p>

<p>Elsewhere Rik and Andrea had a long angry staircase, in which they both had
to step back at times and take a deep breath before going on. Finally, they
were unable to see eye to eye on the technical points, and the thread ended
inconclusively. Since Rik is the official maintainer of the current code,
the burden of proof seems to rest on Andrea, if he wants to see his
classzone patch in the main tree.</p>

</section>

<section
  title="Alan Cox Not Updating EXTRAVERSION In -ac Patches"
  subject="Alan, tie a string around your finger"
  archive=""
  posts="9"
  startdate="13 Jun 2000 00:00:00 -0800"
  enddate="19 Jun 2000 00:00:00 -0800"
>

<mention>Alan Cox</mention>
<mention>Garst R. Reese</mention>

<p>Garst R. Reese chastized Alan Cox, saying that Alan kept forgetting to set
the EXTRAVERSION variable, to indicate the new ac version numbers. Xuan
Baldauf agreed, and explained:</p>

<quote who="Xuan Baldauf">

<p>everytime you forget to update EXTRAVERSION, I get
my modules overwritten in the wrong place. As a consequence, I cannot use
the modules on the yet running ac18 anymore, because the modversions are for
ac19, not ac18.</p>
 
<p>So *please* use a script which automatically increments EXTRAVERSION (I'm
sure you use a script to produce patches). If that's to difficult to act on
a whole file, create a file "extraversion", and import it into the makefile.
It's not important how you do it, but please do it.</p>

</quote>

<p>Alan had no reply.</p>

</section>

<section
  title="Alan's Latest List Of Things To Do Before 2.4 Can Come Out"
  subject="Semi up to date JOBS list"
  archive=""
  posts="64"
  startdate="13 Jun 2000 00:00:00 -0800"
  enddate="17 Jun 2000 00:00:00 -0800"
>
<topic>Compression</topic>
<topic>Disk Arrays: RAID</topic>
<topic>Disks: IDE</topic>
<topic>Disks: SCSI</topic>
<topic>FS: FAT</topic>
<topic>FS: NFS</topic>
<topic>FS: NTFS</topic>
<topic>FS: UMSDOS</topic>
<topic>FS: devfs</topic>
<topic>FS: ext2</topic>
<topic>FS: ramfs</topic>
<topic>Forward Port</topic>
<topic>I2O</topic>
<topic>Networking</topic>
<topic>PCI</topic>
<topic>Power Management: ACPI</topic>
<topic>Real-Time</topic>
<topic>SMP</topic>
<topic>Samba</topic>
<topic>Security</topic>
<topic>USB</topic>
<topic>Virtual Memory</topic>
<topic>VisWS</topic>

<mention>Rogier Wolff</mention>
<mention>Alexander Viro</mention>

<p>Alan Cox posted the most recent version of his list of things to do before
2.4 could come out. He listed:</p>

<quote who="Alan Cox">

<p>

<ol>

<li>

<p>Should Be Fixed (Confirmation Wanted)</p>

<p>

<ol>

<li>IDE fails on some VIA boards (eg the i-opener)</li>

<li>Floppy driver broken by VFS changes. Other drivers may be too (Stuff gets called after _close now - unload race possibly too)</li>

<li>Fbcon races</li>

<li>Fix all remaining PCI code to use new resources and enable_Device (mostly done)</li>

</ol> 

</p>

</li>

<li>

<p>Capable Of Corrupting Your FS</p>

<p>E820 memory setup causes crashes/corruption on some laptops
Use PCI DMA by default in IDE is unsafe (must not do so on via VPx x&lt;3)</p>

</li>

<li>

<p>Security</p>

<p>

<ol>

<li>Fix module remove race bug              (mostly done - Al Viro)</li>

<li>exec loader permissions</li>

<li>access_process_mm oops/lockup if task-&gt;mm changes (Manfred) [user can cause deliberately]</li>

</ol>

</p>

</li>

<li>

<p>Boot Time Failures</p>

<p>

<ol>

<li>AHA29xx driver appears to stomp other cards (may be BIOS)</li>

<li>AHA27xx is broken (maybe 28xx too)</li>

<li>Use PCI DMA 'lost interrupt' problem with some hw [which ?] (NEC Versa LX with PIIX tuning)</li>

<li>HT6560/UMC8672 ide sets up stuff too early (before region stuff can be
done)</li>

<li>Crashes on boot on some Compaqs ? (may be fixed)</li>

<li>ACPI hangs on boot for some systems</li>

<li>Boot hangs on a range of Dell docking stations (Latitude)</li>

</ol>

</p>

</li>

<li>

<p>In Progress</p>

<p>

<ol>

<li>Dcache threading         (Al Viro)</li>

<li>Merge the network fixes  (DaveM)</li>

<li>Finish I2O merge         (Intel/Alan)</li>

<li>Exploitable leak in file locking (Willy)</li>

<li>Restore O_SYNC functionality    (Stephen) - core code and ext2 done</li>

</ol>

</p>

</li>

<li>

<p>Obvious Projects For People (well if you have the hardware..)</p>

<p>

<ol>

<li>pci_socket crash on unload</li>

<li>DEFXX driver appears broken</li>

<li>NCR5380 isnt smp safe</li>

<li>DMFE is not SMP safe</li>

<li>Make syncppp use new ppp code</li>

<li>Fix SPX socket code</li>

<li>Merge the 2.2 ServeRAID driver into 2.4</li>

<li>Merge the current Compaq RAID driver into 2.4</li>

</ol>

</p>

</li>

<li>

<p>Fix Exists But Isnt Merged</p>

<p>

<ol>

<li>Update SGI VisWS to new-style IRQ handling (Ingo)</li>

<li>64bit lockf support</li>

<li>Support MP table above 1Gig (Ingo)</li>

<li>Dont panic on boot when meeting HP boxes with wacked APIC table numbering (AC)</li>

<li>Scheduler bugs in RT    (Dimitris)</li>

<li>HFS is still broken</li>

<li>AIC7xxx doesnt work non PCI ? (Doug says OK, new version due anyway)</li>

<li>Fix hpfs_unlink (Al Viro)</li>

<li>Loopback fs hangs</li>

<li>Fix boards with different TSC per CPU and kill TSC use on them</li>

<li>Floppy last block cache flush error</li>

<li>TB Multisound driver hasnt been updated for new isa I/O totally.</li>

</ol>

</p>

</li>

<li>

<p>To Do</p>

<p>

<ol>

<li>mount crashes on Alpha platforms</li>

<li>Tulip hang on rmmod/crashes sometimes</li>

<li>Devfs races, Sockfs (removing NULL -&gt;i_sb stuf) (Al Viro)</li>

<li>Debian report that the gcc 2.95 possibly miscompiles fault.c or mm/remap.c (Perl script available from Arjan)</li>

<li>Fix further NFS races  (Al Viro)</li>

<li>Test other file systems on write</li>

<li>Audit all char and block drivers to ensure they are safe with the 2.3 locking - a lot of them are not especially on the open() path.</li>

<li>Stick lock_kernel() calls around driver with issues to hard to fix nicely for 2.4 itself</li>

<li>PCMCIA/Cardbus hangs, IRQ problems, Keyboard/mouse problem (may be fixed
?)</li>

<li>Fix mount failures due to copy_* user mishandling</li>

<li>Fix default mount behaviour to disallow repeat mounting</li>

</ol>

</p>

</li>

<li>

<p>To Do But Non Showstopper</p>

<p>

<ol>

<li>Finish 64bit vfs merges (lockf64 and friends missing)</li>

<li>Go through as 2.4pre kicks in and figure what we should mark obsolete for the final 2.4</li>

<li>Union mount (Al Viro)</li>

<li>Per Process rtsigio limit</li>

<li>iget abuse in knfsd</li>

<li>Some people report 2.3.x serial problems</li>

<li>USB hangs on APM suspend on some machines</li>

<li>PCMCIA crashes on unloading pci_socket</li>

<li>ISAPnP IRQ handling failing on SB1000 + resource handling bug</li>

<li>DVD-RAM is apparently not working for write currently (Rogier Wolff)</li>

<li>Parallel ports should set SA_SHIRQ if PCI (eg in Plip)</li>

<li>Devfs compiled in but not mounted causes crap for -&gt;mnt_devname of root (Al Viro)</li>

</ol>

</p>

</li>

<li>

<p>Compatibility Errors</p>

<p>

<ol>

<li>Xterm broke in 2.3.99pre6 (FIONREAD/select loop)</li>

</ol>

</p>

</li>

<li>

<p>Probably Post 2.4</p>

<p>

<ol>

<li>per super block write_super needs an async flag</li>

<li>addres_space needs a VM pressure/flush callback  (Ingo)</li>

<li>per file_op rw_kiovec</li>

</ol>

</p>

</li>

<li>Drivers In 2.2 not 2.4</li>

<li>

<p>To Check</p>

<p>

<ol>

<li>Check O_APPEND atomicity bug fixing is complete</li>

<li>Protection on isize  (sct) [Al Viro mostly done]</li>

<li>Mikulas claims we need to fix the getblk/mark_buffer_uptodate thing for 2.3.x as well</li>

<li>Network block device seems broken by block device changes</li>

<li>VFS?VM - mmap/write deadlock (demo code seems to show lock is there)</li>

<li>rw sempahores on page faults (mmap_sem)</li>

<li>kiobuf seperate lock functions/bounce/page_address fixes</li>

<li>Fix routing by fwmark</li>

<li>Some FB drivers check the A000 area and find it busy then bomb out</li>

<li>rw semaphores on inodes to fix read/truncate races ? [Probably fixed]</li>

<li>Not all device drivers are safe now the write inode lock isnt taken on
write</li>

<li>File locking needs checking for races</li>

<li>Multiwrite IDE breaks on a disk error [minor issue at best]</li>

<li>ACPI/APM suspend issue - IDE related stuff ?</li>

<li>NFS bugs are fixed</li>

<li>Chase reports of SMB not working</li>

<li>Locking on getcwd</li>

<li>IRDA calls get random bytes before random is set up</li>

<li>Some AWE cards are not being found by ISAPnP ??</li>

<li>SHM segments not always being detached and destroyed right ?</li>

<li>RAM disk contents vanishing on cramfs (block change) and bforget cases</li>

</ol>

</p>

</li>

<li>

<p>Fixed</p>

<p>

<ol>

<li>Incredibly slow loopback tcp bug (believed fixed about 2.3.48)</li>

<li>COMX series WAN now merged</li>

<li>VM needs rebalancing or we have a bad leak</li>

<li>SHM works chroot</li>

<li>SHM back compatibility</li>

<li>Intel i960 problems with I2O</li>

<li>Symbol clashes and other mess from _three_ copies of zlib!</li>

<li>PCI buffer overruns</li>

<li>Shared memory changes change the API breaking applications (eg gimp)</li>

<li>Finish softnet driver port over and cleanups</li>

<li>via rhine oopses under load ?</li>

<li>SCSI generic driver crashes controllers (need to pass
PCI_DIR_UNKNOWN..)</li>

<li>UMSDOS fixups resync (not quite done)</li>

<li>Make NTFS sort of work</li>

<li>Any user can crash FAT fs code with ftruncate</li>

<li>AFFS fixups</li>

<li>Directory race fix for UFS</li>

<li>Security holes in execve()</li>

<li>Lan Media WAN update for 2.3</li>

<li>Get the Emu10K merged</li>

<li>Paride seems to need fixes for the block changes yet</li>

<li>Kernel corrupts fs and gs in some situations (Ulrich has demo code)</li>

<li>1.07 AMI MegaRAID</li>

<li>Merge 2.2.15 changes     (Alan)</li>

<li>Get RAID 0.90 in         (Ingo)</li>

<li>S/390 Merge</li>

<li>NFS DoS fix (security)</li>

<li>Merge the RIO driver</li>

<li>Fix Space.c duplicate string/write to constants</li>

<li>Elevator and block handling queue change errors are all sorted</li>

<li>Make sure all drivers return 1 from their __setup functions (Done ?)</li>

<li>Enhanced disk statistics</li>

<li>Complete vfsmount merge  (Al Viro)</li>

<li>Merge removed-buf-open directory stuff into VFS (Al Viro)</li>

<li>Problems with ip autoconfig according to Zaitcev</li>

<li>NFS causes dup kmem_create on reload (Trond)</li>

<li>vmalloc(GFP_DMA) is needed for DMA drivers (Ingo)</li>

<li>TLB flush should use highest priority (Ingo)</li>

<li>SMP affinity code creates multiple dirs with the same name (Ingo)</li>

<li>Set SMP affinity mask to actual cpu online mask (needed for some boards) (Ingo)</li>

<li>heavy swapping corrupts ptes (believed so)</li>

<li>pci_set_master forces a 64 latency on low latency setting devices.Some boards require all cards have latency &lt;= 32</li>

<li>msync fails on NFS (probably fixed anyway)</li>

<li>Find out what has ruined disk I/O throughput. (mostly)</li>

<li>PIII FXSAVE/FXRESTORE support</li>

<li>The netdev name changing stuff broke GRE</li>

<li>put_user is broken for i386 machines (security) - sem stuff may be wrong
too</li>

<li>BusLogic crashes when you cat /proc/scsi/BusLogic/0 (Robert de Vries)</li>

<li>Finish sorting out VM balancing (Rik Van Riel, Juan Quintela et al)</li>

<li>Fix eth= command line</li>

<li>8139 + bridging fails</li>

<li>RtSig limit handling bug</li>

<li>Signals leak kernel memory (security) [FIX in ac tree]</li>

<li>TTY and N_HDLC layer called poll_wait twice per fd and corrupt memory</li>

<li>ATM layer calls poll_wait twice per fd and corrupts memory</li>

<li>Random calls poll_wait twice per fd and corrupts memory</li>

<li>PCI sound calls poll_wait twice per fd and corrupts memory</li>

<li>sbus audio calls poll_wait twice per fd and corrupts memory</li>

<li>IBM MCA driver breaks on Device_Inquiry at boot</li>

<li>SHM code corrupts memory        (Russell)</li>

<li>Linux sends a 1K buffer with SCSI inquiries. The ANSI-SCSI limit is
255.</li>

<li>Linux uses TEST_UNIT_READY to chck for device presence on a PUN/LUN. The INQUIRY is the only valid test allowed by the spec.</li>

<li>truncate_inode_pages does unsafe page cache operations</li>

<li>Fix the ptrace code to be back compatible and add a new PTRACE call set for getting the PIII extra registers</li>

<li>EPIC100 fixes</li>

<li>Tlan and Epic100 crash under load</li>

</ol>

</p>

</li>

</ol>

</p>

</quote>

<p>Jeremy Katz replied with an entry to add to section 4 (boot time failures).
He said, <quote who="Jeremy Katz">Add "AIC7xxx driver doesn't work with
Western Digital drives". This was fixed in Doug's 2.2.x drivers (the 5.1.29
one was the one with the fix iirc) but it hasn't been forward ported to 2.3
yet.</quote></p>

<p>To item 8.3 (Devfs races, Sockfs (removing NULL -&gt;i_sb stuf) (Al Viro)),
Richard Gooch replied, <quote who="Richard Gooch">Actually, I've been
working on fixing the devfs races. My latest patch improves things a
lot.</quote></p>

<p>To item 3.1 (Fix module remove race bug (mostly done - Al Viro)), Alexander
Viro replied that this was in progress.</p>

<p>To item 14.3 (VM needs rebalancing or we have a bad leak), Rik van Riel
replied:</p>

<quote who="Rik van Riel">

<p>There are two small things still needed to be
done.</p>

<p>

<ol>

<li>in a highly unlikely situation (all lru pages are either of a 'wrong'
   zone or unfreeable) shrink_mmap() can get into an infinite loop</li>

<li>I see if the classzone patch has something worthwhile left we should
   merge (I believe we should have most of it by now) OR put in the
   active/inactive/scavenge thing I'm still working on now</li>

</ol>

</p>

<p>(I could have finished the active/inactive/scavenge queue thing a week ago,
but I want the code to be obvious, readable and understandable for the
untrained eye ... in the long run I want all VM code to be easily readable
and maintainable, if only so it's easy to spot and fix bugs when somebody
needs to do some modifications)</p>

</quote>

<p>Alan added to Rik's list, item 3: <quote who="Alan Cox">Figure out why it
all went to shit about ac14.</quote> Rik pointed out that there had been
virtually no VM changes since ac10, and Alan replied, <quote who="Alan
Cox">I suspect the ac10 change may be the actual one that did the
damage.</quote> They went on to have a brief hunt for the exact time of
breakage.</p>

</section>

<section
  title="Dell Binary-Only Drivers May Go Open Source"
  subject="Compiling Linux 2.2.16+ with Dell Proprietary PERC 3/Si Raid Device"
  archive=""
  posts="8"
  startdate="14 Jun 2000 00:00:00 -0800"
  enddate="15 Jun 2000 00:00:00 -0800"
>

<mention>Alan Cox</mention>

<p>Byron Stanoszek asked:</p>

<quote who="Byron Stanoszek">

<p>I have a couple of Dell PowerEdge 4350
computers with a PERC 3/Si raid controller installed as the boot device. I
know about Dell's website that has a binary-only version of their percraid.o
module, but they provide no means of upgrading this kernel to 2.2.15 or
2.2.16 while using the same binary driver.</p>

<p>Is there any chance that anyone is working on an open-source driver that can
be included into the kernel to enable support for this device in the
future?</p>

</quote>

<p>There were several replies, including one from Dell representative Matt
Domsch, who said, <quote who="Matt Domsch">Yes. Dell and our partners have
been working on making this driver open-source. We're in the
"seriously-pound-it-until-you-find-most-bugs" stage, and it's not quite
ready for release. We understand the concern, and are anxious to make this
driver ready for everyone. Supporting binary-only drivers (particularly with
MODVERSIONS enabled) is really really hard, and I'm looking forward to
dropping that one from my list of worries.</quote></p>

<p>Alan Cox confirmed that he'd heard a rumor about the driver being Open
Sourced at some time in the future. Nicholas Marouf asked what he and others
could do to speed the process along, and Rik van Riel replied, <quote
who="Rik van Riel">Not much. The only thing we can do is advice people to
buy elsewhere until the Dell hardware is properly supported.</quote></p>

</section>

<section
  title="Possible Solution For Recent VM CPU Hogging"
  subject="kswapd at 96% CPU on my 16Mb system"
  archive=""
  posts="14"
  startdate="15 Jun 2000 00:00:00 -0800"
  enddate="18 Jun 2000 00:00:00 -0800"
>
<topic>Virtual Memory</topic>

<p>Kees Bakker reported bad 'kswapd' performance on 2.4.0test1-ac17 (see <kcref
subject="[patch] improve streaming I/O [bug in shrink_mmap()]"
startdate="12 Jun 2000 00:00:00 -0800"></kcref> in this issue). After some back-and-forth,
in which Kees posted some log output, Rik van Riel said:</p>

<quote who="Rik van Riel">

<p>Ahh, I see the problem. The function
do_try_to_free_pages() continues to free pages long after we have reached
enough free memory.</p>

<p>The problem is that if that happens, shrink_mmap() will loop for a long long
time but at the same time refuse to free pages because zone-&gt;free_pages
&gt; zone-&gt;pages_high.</p>

<p>In effect, shrink_mmap() enters something quite close to an infinite loop
...</p>

</quote>

</section>

</kc>

