<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="184" date="15 Sep 2002 23:00:00 -0800" />

<stats posts="1739" size="8824" contrib="421" multiples="219" lastweek="166">

<person posts="88" size="252" who="Alan Cox " />
<person posts="66" size="237" who="Daniel Phillips " />
<person posts="53" size="139" who="&quot;David S. Miller&quot; " />
<person posts="48" size="166" who="Linus Torvalds " />
<person posts="44" size="147" who="Ingo Molnar " />
<person posts="41" size="172" who="Andrew Morton " />
<person posts="30" size="189" who="Andrew Morton " />
<person posts="28" size="293" who="Greg KH " />
<person posts="27" size="106" who="William Lee Irwin III " />
<person posts="25" size="167" who="Rusty Russell " />
<person posts="25" size="116" who="Oleg Drokin " />
<person posts="24" size="93" who="Andre Hedrick " />
<person posts="24" size="81" who="Jens Axboe " />
<person posts="20" size="61" who="Rik van Riel " />
<person posts="20" size="60" who="Adrian Bunk " />
<person posts="19" size="393" who="Karim Yaghmour " />
<person posts="19" size="125" who="Anton Altaparmakov " />
<person posts="19" size="123" who="&quot;Peter T. Breuer&quot; " />
<person posts="19" size="82" who="&quot;Paolo Ciarrocchi&quot; " />
<person posts="18" size="144" who="Oliver Xymoron " />
<person posts="18" size="80" who="Mike Isely " />
<person posts="17" size="77" who="Daniel Jacobowitz " />
<person posts="17" size="46" who="Christoph Hellwig " />
<person posts="16" size="54" who="Zwane Mwaikambo " />
<person posts="12" size="244" who="Alan Cox " />
<person posts="12" size="57" who="Robert Love " />
<person posts="12" size="57" who="Vojtech Pavlik " />
<person posts="12" size="56" who="&quot;Christian Ehrhardt&quot; " />
<person posts="12" size="33" who="Thunder from the hill " />
<person posts="11" size="67" who="Andreas Steinmetz " />
<person posts="11" size="55" who="Patrick Mansfield " />
<person posts="11" size="50" who="James Bottomley " />
<person posts="11" size="48" who="Lars Marowsky-Bree " />
<person posts="11" size="37" who="Sam Ravnborg " />
<person posts="11" size="35" who="Tomas Szepe " />
<person posts="11" size="32" who="Jeff Garzik " />
<person posts="10" size="61" who="Helge Hafting " />
<person posts="10" size="37" who="&quot;Imran Badr&quot; " />
<person posts="10" size="32" who="&quot;Richard B. Johnson&quot; " />
<person posts="9" size="193" who="Martin Schwidefsky " />
<person posts="9" size="51" who="Andrea Arcangeli " />
<person posts="9" size="29" who="Daniel Egger " />
<person posts="9" size="29" who="Hirokazu Takahashi " />
<person posts="9" size="27" who="Alexander Viro " />
<person posts="8" size="38" who="Doug Ledford " />
<person posts="8" size="26" who="&quot;H. Peter Anvin&quot; " />
<person posts="8" size="22" who="Pavel Machek " />
<person posts="7" size="131" who="&quot;Adam J. Richter&quot; " />
<person posts="7" size="72" who="Axel Siebenwirth " />
<person posts="7" size="28" who="Hans Reiser " />
<person posts="7" size="25" who="Martin Wilck " />
<person posts="7" size="25" who="Dominik Brodowski " />
<person posts="7" size="21" who="David Woodhouse " />
<person posts="7" size="18" who="Mike Dresser " />
<person posts="6" size="114" who="Stephane Wirtel " />
<person posts="6" size="77" who="Ivan Kokshaysky " />
<person posts="6" size="39" who="Dipankar Sarma " />
<person posts="6" size="32" who="jw schultz " />
<person posts="6" size="31" who="Gerd Knorr " />
<person posts="6" size="21" who="&quot;Martin J. Bligh&quot; " />
<person posts="6" size="20" who="James Morris " />
<person posts="6" size="19" who="Thomas Molina " />
<person posts="6" size="17" who="Paul Mackerras " />
<person posts="6" size="16" who="DevilKin " />
<person posts="6" size="16" who="Andi Kleen " />
<person posts="6" size="14" who="Manfred Spraul " />
<person posts="5" size="35" who="Kirk Reiser " />
<person posts="5" size="32" who="Matthew Wilcox " />
<person posts="5" size="19" who="=?iso-8859-1?Q?Ragnar_Kj=F8rstad?= " />
<person posts="5" size="19" who="Gregoire Favre " />
<person posts="5" size="18" who="Amos Waterland " />
<person posts="5" size="18" who="Steven Cole " />
<person posts="5" size="18" who="Roman Zippel " />
<person posts="5" size="18" who="mbs " />
<person posts="5" size="17" who="Rogier Wolff " />
<person posts="5" size="16" who="&quot;Justin T. Gibbs&quot; " />
<person posts="5" size="15" who="&quot;Stephen C. Tweedie&quot; " />
<person posts="5" size="15" who="Horst von Brand " />
<person posts="5" size="14" who="Patrick Schaaf " />
<person posts="5" size="13" who="Mikael Pettersson " />
<person posts="4" size="33" who="Bob McElrath " />
<person posts="4" size="29" who="David Lang " />
<person posts="4" size="26" who="Alexander Hoogerhuis " />
<person posts="4" size="26" who="&quot;T. Ryan Halwachs&quot; " />
<person posts="4" size="23" who="Cort Dougan " />
<person posts="4" size="22" who="Mike Anderson " />
<person posts="4" size="20" who="OGAWA Hirofumi " />
<person posts="4" size="20" who="Hans-Peter Jansen " />
<person posts="4" size="19" who="Dave Kleikamp " />
<person posts="4" size="17" who="Matthew Dharm " />
<person posts="4" size="16" who="Jeremy Higdon " />
<person posts="4" size="15" who="george anzinger " />
<person posts="4" size="15" who="&quot;D. Hugh Redelmeier&quot; " />
<person posts="4" size="14" who=" (Linus Torvalds)" />
<person posts="4" size="14" who="Neil Brown " />
<person posts="4" size="13" who="&quot;Henning P. Schmiedehausen&quot; " />
<person posts="4" size="13" who="bert hubert " />
<person posts="4" size="13" who="Chris Mason " />
<person posts="4" size="11" who="Peter " />
<person posts="4" size="11" who="Andries Brouwer " />
<person posts="4" size="11" who=" (Bob_Tracy)" />
<person posts="4" size="11" who="Krzysztof Benedyczak " />
<person posts="4" size="11" who="Dave Jones " />
<person posts="4" size="11" who="Skip Ford " />
<person posts="3" size="220" who="&quot;Alan Miles&quot; " />
<person posts="3" size="105" who=" (Hans Reiser)" />
<person posts="3" size="46" who="Andreas Dilger " />
<person posts="3" size="35" who="Daniel Mehrmann " />
<person posts="3" size="24" who="Pavel Machek " />
<person posts="3" size="15" who="Cliff White " />
<person posts="3" size="14" who=" (David Wagner)" />
<person posts="3" size="12" who="&quot;Cameron, Steve&quot; " />
<person posts="3" size="11" who="Harald Welte " />
<person posts="3" size="11" who="Joachim Breuer " />
<person posts="3" size="10" who="Phil Stracchino " />
<person posts="3" size="10" who="James Blackwell " />
<person posts="3" size="9" who="Remco Post " />
<person posts="3" size="9" who="&quot;Feldman, Scott&quot; " />
<person posts="3" size="9" who="Jean Tourrilhes " />
<person posts="3" size="9" who="Adam Jaskiewicz " />
<person posts="3" size="8" who="Thomas Davis " />
<person posts="3" size="8" who="Marc-Christian Petersen " />
<person posts="3" size="8" who="john slee " />
<person posts="3" size="8" who="Shaya Potter " />
<person posts="3" size="8" who="John Levon " />
<person posts="3" size="8" who="Gabriel Paubert " />
<person posts="3" size="7" who="Rusty Trivial Russell " />
<person posts="3" size="7" who="Jamie Lokier " />
<person posts="3" size="7" who="Xavier Bestel " />
<person posts="2" size="48" who="Martin Knoblauch " />
<person posts="2" size="40" who="Matthew Harrell " />
<person posts="2" size="38" who="Gregory Stark " />
<person posts="2" size="34" who="Ken Moffat " />
<person posts="2" size="30" who="john stultz " />
<person posts="2" size="23" who="Lawrence Walton " />
<person posts="2" size="21" who="Christoph Hellwig " />
<person posts="2" size="20" who="Juan Gomez " />
<person posts="2" size="19" who="Marius Gedminas " />
<person posts="2" size="18" who="Stephen Hemminger " />
<person posts="2" size="17" who="Jeroen Vreeken " />
<person posts="2" size="14" who="Rolf Fokkens " />
<person posts="2" size="12" who="Dan Eaton " />
<person posts="2" size="12" who="&quot;Rechenberg, Andrew&quot; " />
<person posts="2" size="12" who="Peter Surda " />
<person posts="2" size="12" who="Frederik Himpe " />
<person posts="2" size="11" who="&quot;Ben Rafanello&quot; " />
<person posts="2" size="10" who="Joseph N. Hall " />
<person posts="2" size="9" who="Patricia Gaughen " />
<person posts="2" size="9" who="Friedrich Lobenstock " />
<person posts="2" size="9" who="Luca Barbieri " />
<person posts="2" size="8" who="&quot;Mala Anand&quot; " />
<person posts="2" size="8" who="David Mosberger " />
<person posts="2" size="8" who="&quot;Jordi Ros&quot; " />
<person posts="2" size="8" who="Padraig Brady " />
<person posts="2" size="8" who="Samuel Flory " />
<person posts="2" size="8" who="Ingo Oeser " />
<person posts="2" size="8" who="&quot;Petr Vandrovec&quot; " />
<person posts="2" size="7" who="&quot;Wojciech \&quot;Sas\&quot; Cieciwa&quot; " />
<person posts="2" size="7" who="CAMTP guest " />
<person posts="2" size="7" who="&quot;Daniela Engert&quot; " />
<person posts="2" size="7" who="Nikita Danilov " />
<person posts="2" size="7" who="Hugh Dickins " />
<person posts="2" size="7" who="Dieter =?iso-8859-15?q?N=FCtzel?= " />
<person posts="2" size="7" who="&quot;Woller, Thomas&quot; " />
<person posts="2" size="7" who="&quot;R Sreelatha&quot; " />
<person posts="2" size="7" who="Stephan von Krawczynski " />
<person posts="2" size="7" who="Jeff Chua " />
<person posts="2" size="7" who="Russell King " />
<person posts="2" size="7" who="Kent Borg " />
<person posts="2" size="7" who="Bart Trojanowski " />
<person posts="2" size="6" who="Hubert Tonneau " />
<person posts="2" size="6" who="Tom Rini " />
<person posts="2" size="6" who="Richard Zidlicky " />
<person posts="2" size="6" who="Alex Riesen " />
<person posts="2" size="6" who="Jan Kasprzak " />
<person posts="2" size="6" who="Corey Minyard " />
<person posts="2" size="6" who="Oktay Akbal " />
<person posts="2" size="6" who="Petr Vandrovec " />
<person posts="2" size="6" who="Clemens Schwaighofer " />
<person posts="2" size="6" who="&quot;Dmitry N. Hramtsov&quot; " />
<person posts="2" size="6" who="&quot;Benjamin Herrenschmidt&quot; " />
<person posts="2" size="6" who="Nuitari " />
<person posts="2" size="6" who="Benjamin LaHaise " />
<person posts="2" size="6" who="&quot;Michel Eyckmans (MCE)&quot; " />
<person posts="2" size="6" who="&quot;Folkert van Heusden&quot; " />
<person posts="2" size="6" who="Bill Davidsen " />
<person posts="2" size="6" who="Bernd Eckenfels " />
<person posts="2" size="5" who="Patrick Mochel " />
<person posts="2" size="5" who="zhengchuanbo " />
<person posts="2" size="5" who="Paul Larson " />
<person posts="2" size="5" who="Maurice Volaski " />
<person posts="2" size="5" who="Rick Lindsley " />
<person posts="2" size="5" who="John Weber " />
<person posts="2" size="5" who="&quot;Martin J. Bligh&quot; " />
<person posts="2" size="5" who="Aaron Lehmann " />
<person posts="2" size="5" who="Jakub Jelinek " />
<person posts="2" size="5" who="Eli " />
<person posts="2" size="5" who="Peter Svensson " />
<person posts="2" size="5" who="Jan Kara " />
<person posts="2" size="5" who="Jordan Crouse " />
<person posts="2" size="5" who="Kristian Peters " />
<person posts="2" size="5" who="Zwane Mwaikambo " />
<person posts="2" size="5" who="Martin Mares " />
<person posts="2" size="5" who="DervishD " />
<person posts="2" size="4" who="Anton Blanchard " />
<person posts="2" size="4" who="&quot;Juan M. de la Torre&quot; " />
<person posts="2" size="4" who="Con Kolivas " />
<person posts="2" size="4" who="kyi " />
<person posts="2" size="3" who="&quot;Angel GrefurT&quot; " />
<person posts="1" size="44" who="&quot;Zephaniah E\. Hull&quot; " />
<person posts="1" size="27" who="Carsten Menke " />
<person posts="1" size="27" who="Rich Baum " />
<person posts="1" size="25" who="Larry Woods " />
<person posts="1" size="23" who="Jens Wiesecke " />
<person posts="1" size="21" who="Alan Stern " />
<person posts="1" size="19" who="Dave Hansen " />
<person posts="1" size="16" who="Chuck Lever " />
<person posts="1" size="15" who=" (Pavel =?iso-8859-2?q?Jan=EDk?=)" />
<person posts="1" size="15" who="Marc Zyngier " />
<person posts="1" size="13" who="&quot;Guillaume Boissiere&quot; " />
<person posts="1" size="12" who="&quot;Marek Mentel&quot; " />
<person posts="1" size="11" who="Sergio Costas " />
<person posts="1" size="11" who="Ludwig " />
<person posts="1" size="10" who="Suparna Bhattacharya " />
<person posts="1" size="10" who="Rainer Eisenhofer " />
<person posts="1" size="9" who="Kai Germaschewski " />
<person posts="1" size="9" who="Thierry BLIND " />
<person posts="1" size="9" who="David Lang " />
<person posts="1" size="8" who="Juan Gomez " />
<person posts="1" size="7" who="Rudmer van Dijk " />
<person posts="1" size="6" who="&quot;H.Rosmanith (Kernel Mailing List)&quot; " />
<person posts="1" size="6" who="Scott Henson " />
<person posts="1" size="6" who="&quot;Pering, Trevor&quot; " />
<person posts="1" size="6" who="&quot;Bjoern A. Zeeb&quot; " />
<person posts="1" size="6" who="Pete Zaitcev " />
<person posts="1" size="6" who="Pascal Schmidt " />
<person posts="1" size="5" who="Robert Latham " />
<person posts="1" size="5" who="&quot;Robert Williamson&quot; " />
<person posts="1" size="5" who="Hanno =?ISO-8859-1?Q?B=F6ck?= " />
<person posts="1" size="5" who="Todd Inglett " />
<person posts="1" size="5" who="&quot;Rob Emanuele&quot; " />
<person posts="1" size="5" who="Dave Olien " />
<person posts="1" size="4" who="Jan Harkes " />
<person posts="1" size="4" who=" (Heinz J . Mauelshagen)" />
<person posts="1" size="4" who="&quot;Suparna Bhattacharya&quot; " />
<person posts="1" size="4" who="&quot;Hammer, Jack&quot; " />
<person posts="1" size="4" who="Jim Houston " />
<person posts="1" size="4" who="Roland Kuhn " />
<person posts="1" size="4" who="Larry McVoy " />
<person posts="1" size="4" who="Inguva " />
<person posts="1" size="4" who="David Ford " />
<person posts="1" size="4" who="Luben Tuikov " />
<person posts="1" size="4" who="Hu Gang " />
<person posts="1" size="4" who="Ed Sweetman " />
<person posts="1" size="4" who="Allan MacKinnon " />
<person posts="1" size="4" who="&quot;Hanumanthu. H&quot; " />
<person posts="1" size="4" who="Steven Timm " />
<person posts="1" size="4" who="Chris Friesen " />
<person posts="1" size="4" who="=?ISO-8859-1?Q?G=E9rard_Roudier?= " />
<person posts="1" size="4" who="Don Dugger " />
<person posts="1" size="4" who="Jean-Luc Coulon " />
<person posts="1" size="4" who="&quot;Nick Piggin&quot; " />
<person posts="1" size="4" who="Duncan Sands " />
<person posts="1" size="4" who="=?iso-8859-2?Q?Jaros=B3aw?= Bekas " />
<person posts="1" size="3" who="Maxwell Spangler " />
<person posts="1" size="3" who="Joel Jaeggli " />
<person posts="1" size="3" who=" (Eric W. Biederman)" />
<person posts="1" size="3" who="Corporal Pisang " />
<person posts="1" size="3" who="Holger Lubitz " />
<person posts="1" size="3" who="&quot;Ryan S. Upton&quot; " />
<person posts="1" size="3" who="J Sloan " />
<person posts="1" size="3" who="Matti Aarnio " />
<person posts="1" size="3" who="Shailabh Nagar " />
<person posts="1" size="3" who="Jurriaan " />
<person posts="1" size="3" who="Steve Mickeler " />
<person posts="1" size="3" who="Denis RICHARD " />
<person posts="1" size="3" who="Peter Riocreux " />
<person posts="1" size="3" who="Szombathelyi =?iso-8859-2?q?Gy=F6rgy?= " />
<person posts="1" size="3" who="&quot;Grover, Andrew&quot; " />
<person posts="1" size="3" who="Oleg Drokin " />
<person posts="1" size="3" who="Ed Tomlinson " />
<person posts="1" size="3" who="Justin Heesemann " />
<person posts="1" size="3" who="David Gibson " />
<person posts="1" size="3" who="Erik Mouw " />
<person posts="1" size="3" who="James Cleverdon " />
<person posts="1" size="3" who="Thomas Habets " />
<person posts="1" size="3" who="Bernd Schubert " />
<person posts="1" size="3" who="&quot;Dr. David Alan Gilbert&quot; " />
<person posts="1" size="3" who="Andreas Kerl " />
<person posts="1" size="3" who="Billy Harvey " />
<person posts="1" size="3" who="Marc Giger " />
<person posts="1" size="3" who="Frank Davis " />
<person posts="1" size="3" who="&quot;from Mr Brian Philips&quot; " />
<person posts="1" size="3" who="&quot;Kevin O'Connor&quot; " />
<person posts="1" size="3" who="&quot;Jeffrey J. Kosowsky&quot; " />
<person posts="1" size="3" who="Jesse Barnes " />
<person posts="1" size="3" who="Greg Alexander " />
<person posts="1" size="3" who="Tim Hockin " />
<person posts="1" size="3" who="&quot;H. J. Lu&quot; " />
<person posts="1" size="3" who="Konstantin Kletschke " />
<person posts="1" size="3" who="Johan Kullstam " />
<person posts="1" size="3" who="Adam Johnson " />
<person posts="1" size="3" who="Art Wagner " />
<person posts="1" size="3" who="&quot;Udo A. Steinberg&quot; " />
<person posts="1" size="3" who=" (Kai Henningsen)" />
<person posts="1" size="3" who="&quot;J.A. Magallon&quot; " />
<person posts="1" size="3" who="Marcelo Tosatti " />
<person posts="1" size="3" who="Brad Hards " />
<person posts="1" size="3" who="&quot;Juergen E. Fischer&quot; " />
<person posts="1" size="3" who="Peter Osterlund " />
<person posts="1" size="3" who="Jim Treadway " />
<person posts="1" size="3" who="Tabris " />
<person posts="1" size="3" who="Tim Connors " />
<person posts="1" size="3" who="Gunther Mayer " />
<person posts="1" size="3" who="&quot;Nix N. Nix&quot; " />
<person posts="1" size="3" who="Craig Ruff " />
<person posts="1" size="2" who="&quot;Martin Schwidefsky&quot; " />
<person posts="1" size="2" who="David Kleikamp " />
<person posts="1" size="2" who="Gcc k6 testing account " />
<person posts="1" size="2" who="&quot;Gibson, Chuck&quot; " />
<person posts="1" size="2" who="Joe Kellner " />
<person posts="1" size="2" who="&quot;Steve Kelly&quot; " />
<person posts="1" size="2" who="&quot;Ulrich Weigand&quot; " />
<person posts="1" size="2" who="&quot;Maciej W. Rozycki&quot; " />
<person posts="1" size="2" who="Keith Owens " />
<person posts="1" size="2" who="Thorkild Stray " />
<person posts="1" size="2" who="&quot;Samium Gromoff&quot; " />
<person posts="1" size="2" who="&quot;Murray J. Root&quot; " />
<person posts="1" size="2" who="&quot;Stuart MacDonald&quot; " />
<person posts="1" size="2" who="Gerrit Huizenga " />
<person posts="1" size="2" who="&quot;Jeff V. Merkey&quot; " />
<person posts="1" size="2" who="Denis Zaitsev " />
<person posts="1" size="2" who="Felipe Alfaro Solana " />
<person posts="1" size="2" who="&quot;David Hinkle&quot; " />
<person posts="1" size="2" who="Stephen Rothwell " />
<person posts="1" size="2" who="&quot;Barry K. Nathan&quot; " />
<person posts="1" size="2" who="Ashby " />
<person posts="1" size="2" who="Martyn Ranyard " />
<person posts="1" size="2" who="Andi Kleen " />
<person posts="1" size="2" who="Christoph Rohland " />
<person posts="1" size="2" who="Dan Aloni " />
<person posts="1" size="2" who="Dag Nygren " />
<person posts="1" size="2" who="Jason L Tibbitts III " />
<person posts="1" size="2" who="Hiroshi Takekawa " />
<person posts="1" size="2" who="&quot;K.R. Foley&quot; " />
<person posts="1" size="2" who="Dieter =?iso-8859-1?q?N=FCtzel?= " />
<person posts="1" size="2" who="Nicholas " />
<person posts="1" size="2" who="snpe " />
<person posts="1" size="2" who="Otto Wyss " />
<person posts="1" size="2" who="Seaman Hu " />
<person posts="1" size="2" who="Anton Lavrentiev " />
<person posts="1" size="2" who="Atish Datta Chowdhury " />
<person posts="1" size="2" who="Geert Uytterhoeven " />
<person posts="1" size="2" who="Anders Fugmann " />
<person posts="1" size="2" who="&quot;Ian Chard&quot; " />
<person posts="1" size="2" who="Brian Gerst " />
<person posts="1" size="2" who="&quot;Axel H. Siebenwirth&quot; " />
<person posts="1" size="2" who="Greg Stark " />
<person posts="1" size="2" who="Mark Hahn " />
<person posts="1" size="2" who="Nicolas Pitre " />
<person posts="1" size="2" who="Kurt Ferreira " />
<person posts="1" size="2" who="Lee Van Dyke " />
<person posts="1" size="2" who="Kianusch Sayah Karadji " />
<person posts="1" size="2" who="&quot;Claus Rosenberger&quot; " />
<person posts="1" size="2" who="Greg Ungerer " />
<person posts="1" size="2" who="Andrew Ryan " />
<person posts="1" size="2" who="Scorpion " />
<person posts="1" size="2" who="Herbert Valerio Riedel " />
<person posts="1" size="2" who="anton wilson " />
<person posts="1" size="2" who="David Brownell " />
<person posts="1" size="2" who="Miles Lane " />
<person posts="1" size="2" who="&quot;Nandakumar  NarayanaSwamy&quot; " />
<person posts="1" size="2" who="David Forrest " />
<person posts="1" size="2" who="Ookhoi " />
<person posts="1" size="2" who="Roy Bixler " />
<person posts="1" size="2" who="Nicholas Miell " />
<person posts="1" size="2" who="&quot;H. J. Lu&quot; " />
<person posts="1" size="2" who="Peter Chubb " />
<person posts="1" size="2" who="Mario Vanoni " />
<person posts="1" size="2" who="shakira banu " />
<person posts="1" size="2" who="Chris Wright " />
<person posts="1" size="2" who="Jeff Dike " />
<person posts="1" size="2" who="Venu Vadapalli " />
<person posts="1" size="2" who="John Jasen " />
<person posts="1" size="2" who="&quot;Frank Peters&quot; " />
<person posts="1" size="2" who="Gerald Britton " />
<person posts="1" size="2" who="Con Kolivas " />
<person posts="1" size="2" who="Matthias Urlichs " />
<person posts="1" size="2" who="DBS " />
<person posts="1" size="2" who="Brad Chapman " />
<person posts="1" size="2" who="Pavel Roskin " />
<person posts="1" size="2" who="Nuno Silva " />
<person posts="1" size="2" who="Tony Clarke " />
<person posts="1" size="2" who="&quot;Francesco Rabbi&quot; " />
<person posts="1" size="2" who="Sanjay Kumar " />
<person posts="1" size="2" who="Shane Shrybman " />
<person posts="1" size="2" who="Itai Nahshon " />
<person posts="1" size="2" who="=?iso-8859-1?q?thomas=20joseph?= " />
<person posts="1" size="2" who="Alex Davis " />
<person posts="1" size="2" who="Edgar Toernig " />
<person posts="1" size="2" who="Louis Garcia " />
<person posts="1" size="2" who="Theewara Vorakosit " />
<person posts="1" size="1" who="&quot;Seong Moon&quot; " />
<person posts="1" size="1" who="Vikas Jain " />

</stats>

<section
  title="e1000 Driver With TCP Segmentation Offloading"
  subject="TCP Segmentation Offloading (TSO)"
  archive=""
  posts="39"
  startdate="02 Sep 2002 09:45:08 -0800"
  enddate="07 Sep 2002 20:29:19 -0800"
>
<topic>Networking</topic>

<p>Scott Feldman remarked, <quote who="Scott Feldman">TCP Segmentation
Offloading (TSO) is enabled[1] in 2.5.33, along with an enabled e1000 driver.
Other capable devices can be enabled ala e1000; the driver interface
(NETIF_F_TSO) is very simple.</quote> And David S. Miller replied, <quote
who="David S. Miller">I would like to praise Intel for working so closely with
us on this.  They gave us immediately, in one email, all the information we
needed to implement and test e1000 support for TSO under Linux.  With some
other companies, doing this is like pulling teeth.</quote></p>

</section>

<section
  title="Dealing With Filesystem Fragmentation"
  subject="ext3 throughput woes on certain (possibly heavily fragmented) files"
  archive=""
  posts="7"
  startdate="03 Sep 2002 01:24:19 -0800"
  enddate="06 Sep 2002 14:05:12 -0800"
>
<topic>FS: ReiserFS</topic>
<topic>FS: XFS</topic>
<topic>FS: ext2</topic>
<topic>FS: ext3</topic>

<p>Aaron Lehmann noticed that under ext3, catting the contents of some large
files could take much longer than others. He speculated that this was due to
file fragmentation; and Stephen C. Tweedie replied, <quote who="Stephen C.
Tweedie">Yep, both ext2 and ext3 can get badly fragmented by files which
are closed, reopened and appended to frequently like that.</quote> He added,
<quote who="Stephen C. Tweedie">There are some ideas from recent FFS changes.
One thing they now do is to defragment things automatically as a file grows
by effectively deleting and then reallocating the last 16 blocks of the file.
Fragmentation will still occur, but less so, if we do that.</quote> Nikita
Danilov suggested, <quote who="Nikita Danilov">Another possible solution is
to try to "defer" allocation. For example, in reiser4 (and XFS, I believe)
extents are allocated on the transaction commit and as a result, if file was
created by several writes, it will still be allocated as one extent.</quote>
Stephen said that ext2 already did this, and added, <quote who="Stephen
C. Tweedie">The problem with mail files, though, is that they tend to grow
quite slowly, so the writes span very many transactions and we don't have
that opportunity for coalescing the writes.  Actively defragmenting on writes
is an alternative in that case.</quote> And Hans Reiser said:</p>

<quote who="Hans Reiser">

<p>The FFS approach has an advantage for the case where the file grows too
slowly for allocation to be delayed.</p>

<p>I think I prefer that we implement a repacker for reiser4 though, as that,
combined with delayed allocation, will be a balanced and thorough solution.</p>

</quote>

<p>Aaron asked:</p>

<quote who="Aaron Lehmann">

<p>How does current ReiserFS fare against extreme fragmentation? What about
XFS? Without trying to risk a flamewar, what Linux filesystems are the most
preventive of fragmentation?</p>

<p>The filesystem could make a huge difference on a machine like a mail
server...</p>

</quote>

<p>Hans replied, <quote who="Hans Reiser">Sometimes it is best to
confess that one does not have the expertise appropriate for answering a
question. Someone on our mailing list studied it carefully though. Perhaps
they can comment.</quote> But there was no reply.</p>

</section>

<section
  title="Patch Submission: Keeping Fixes Separate From New Code"
  subject="One more bio for for floppy users in 2.5.33.."
  archive=""
  posts="30"
  startdate="03 Sep 2002 10:00:39 -0800"
  enddate="10 Sep 2002 00:01:36 -0800"
>

<p>Linus Torvalds posted a patch and said:</p>

<quote who="Linus Torvalds">

<p>I found another major bio-related bug that definitely explains why the 
floppy driver generated corruption - any partial request completion would
be totally messed up by the BIO layer (not the floppy driver).</p>

<p>Any other block device driver that did partial request completion might
also be impacted.</p>

<p>I'm still looking at the floppy driver itself - some of the request
completion code is so messed up as to be unreadable, and some of that may
actually be due to trying to work around the bio problem (unsuccessfully,
I may add). So this may not actually fix things for you yet, simply
because the floppy driver itself still does some strange things.</p>

<p>Jens, oops. We should not update the counts by how much was left
uncompleted, but by how much we successfully completed!</p>

</quote>

<p>Jens Axboe replied:</p>

<quote who="Jens Axboe">

<p>Yeah oops, the most embarassing thing is that Bart and I have both found
this but independently months ago but it seems it got lost at my end (or
your end, but lets not point fingers :-) :-(</p>

<p>Patch is ofcourse correct. I'm not sure other drivers have been hit (of
the used ones), since they would have to use old style completions and do
less than current_nr_sectors in one-go.</p>

</quote>

<p>Suparna Bhattacharya said that she'd also fixed it in the bio traversal
patches she'd sent in awhile ago. <quote who="Suparna Bhattacharya">guess it
went unnoticedm,</quote> she said. Linus replied:</p>

<quote who="Linus Torvalds">

<p>Well, I've never seen a "this should go in" about it.</p>

<p>Also, it was apparently mixed up with the "bio splitup" stuff, which was
discussed at least with Jens, and I feel strongly that we shouldn't split,
we should build up. Jens was working on exactly that.</p>

<p>In other words, I absolutely hate the fact that a major bug-fix was<br />
 (a) not marked as such and sent to me<br />
and<br />
 (b) mixed up with experimental work for other drivers</p>

<p>Even now (assuming I hadn't fixed it on my own), I would have preferred
to get that fix separately, as it would have impacted the floppy driver,
for example (the fix broke the floppy driver even more than it was before,
because the floppy driver was stupidly trying to work around the original
bug by hand).</p>

<p>Imagine what a horror it is to figure out why a large experimental patch
breaks an existing driver? My first reaction would have been to just throw
the large new patch away, since it obviously broke the floppy even more.
Instead, if I had been passed the bug-fix only, and the floppy had broken
worse that it was originally, it would have been absolutely _obvious_ where
the problem was.</p>

<p>In short: please please PLEASE keep fixes to existing code separate from
new stuff. It makes everything easier, and I have absolutely no problems
with applying "obvious fixes" even if they might break something else.</p>

<p>In contrast, the new stuff I really don't know if it should go in at all,
considering that it's trivial (and CPU-efficient) to build up legal bio
request on the fly and _not_ depend on splitting them later (or at least
making splitting a special thing only used by things like MD and other such
indirection layers).</p>

</quote>

</section>

<section
  title="Finding The Right Compiler"
  subject="[PATCH] Important per-cpu fix."
  archive=""
  posts="32"
  startdate="03 Sep 2002 18:35:41 -0800"
  enddate="10 Sep 2002 01:41:05 -0800"
>

<p>Rusty Russell posted a short patch and explained:</p>

<quote who="Rusty Russell">

<p>Frankly, I'm amazed the kernel worked for long without this.</p>

<p>Every linker script thinks the section is called .data.percpu.
Without this patch, every CPU ends up sharing the same "per-cpu"
variable.</p>

<p>This might explain the wierd per-cpu problem reports from Andrew and
Dave, and also that nagging feeling that I'm an idiot...</p>

</quote>

<p>David S. Miller reported, <quote who="David S. Miller">without the explicit
initializers the per-cpu stuff still ends up in the BSS with egcs-2.9X, even
with your fix applied.</quote> Rusty replied, <quote who="Rusty Russell">OK.
I really hate working around wierd toolchain bugs (I use 2.95.4 here and
it's fine), and adding an initializer to the macro is ugly.  If you're not
going to upgrade your compiler, will you accept a gcc patch to fix this?
If so, where can I get the source to your exact version?</quote> David
said he was using gcc 2.92.11, and added, <quote who="David S. Miller">Oh,
"I'm" willing to upgrade "my" compiler, it's my users that are the problem.
If you impose 3.1 or whatever, I get less people testing on sparc64 as a
result.</quote> Linus Torvalds said:</p>

<quote who="Linus Torvalds">

<p>Well, I don't think you have to go to 3.1.x.</p>

<p>gcc-2.96 at least seems to do all right. Apparently 2.95 does too. It's
only the truly ancient compilers that don't work.</p>

</quote>

<p>But David came back with, <quote who="David S. Miller">Yes I do, anything
after our standard sparc64 (ie. egcs-2.92.11) compiler up until 3.1.x is
seriously unusable for kernel builds.</quote></p>

</section>

<section
  title="Linux 2.4.20-pre5-ac2 Released"
  subject="Linux 2.4.20-pre5-ac2"
  archive=""
  posts="3"
  startdate="04 Sep 2002 07:26:12 -0800"
  enddate="05 Sep 2002 04:56:45 -0800"
>
<topic>Assembly</topic>
<topic>Disks: IDE</topic>
<topic>FS: BeFS</topic>
<topic>Kernel Release Announcement</topic>
<topic>Modems</topic>
<topic>Networking</topic>
<topic>PCI</topic>
<topic>USB</topic>

<mention>Steven Cole</mention>
<mention>Petr Vandrovec</mention>
<mention>Will Dyson</mention>
<mention>Roman Zippel</mention>
<mention>Chuck Lever</mention>
<mention>Andre Hedrick</mention>
<mention>Bartlomiej Zolnierkiewicz</mention>
<mention>Dominik Brodowski</mention>
<mention>Itai Nahshon</mention>
<mention>David Brownell</mention>
<mention>Zwane Mwaikambo</mention>

<p>Alan Cox announced 2.4.20-pre5-ac2 and said:</p>

<quote who="Alan Cox">

<p>Merging the smaller bits of the IDE changes first along with the
patch backlog. This isnt going to fix anyones IDE bugs, but by merging
this way its easier to check it doesn't introduce any new ones. This
patch is mostly about clearing the decks ready for further work.</p>

<p>Linux 2.4.20-pre5-ac2</p>

<p>

<ul>

<li>BeFS updates                                    (Will Dyson)</li>
<li>Fix prototype mismatch in tc/tc.c               (Silvio Cesare)</li>
<li>SunRPC oops fix                                 (Chuck Lever)</li>
<li>Fix SunRPC TCP handling for write_space         (Chuck Lever)</li>
<li>Update ver_linux reporting further              (Steven Cole)</li>
<li>Cpufreq updates                                 (Dominik Brodowski)</li>
<li>Update pegasus.h license header                 (Petko Manolov)</li>
<li>USB lcd driver                                  (Adams IT)</li>
<li>Update bluetooth drivers                        (Greg Kroah-Hartmann, Masoodur Rahman)</li>
<li>USB serial update                               (Greg Kroah Hartmann)</li>
<li>Workaround for some usb keyboards               (Itai Nahshon)</li>
<li>Minolta DImage4 entry for unusual_devices       (Petr Konecny)</li>
<li>OHCI completion of unlinked urbs fix            (David Brownell)</li>
<li>Tighten AC97 modem detect rules                 (me)</li>
<li>Report AC97 codecs by their PNP ID              (me)</li>
<li>Further sis memory checks                       (Zwane Mwaikambo)</li>
<li>Add new opcodes to the hdreg.h IDE table        (Andre Hedrick)</li>
<li>Update cris and x86_64 ide.h files              (Andre Hedrick)</li>
<li>Fix includes in freecom.c                       (Andre Hedrick)</li>
<li>Winbond IDE requires PCI                        (Andre Hedrick)</li>
<li>icside cleanup                                  (Andre Hedrick)</li>
<li>Report ide unregister failures                  (Andre Hedrick)</li>
<li>Clean up legacy hd driver to use outb           (Andre Hedrick)</li>
<li>Ditto for ide-cs                                (Andre Hedrick)</li>
<li>ns87415 needed to call its own ide_dma_end      (Andre Hedrick)</li>
<li>Make via_base unsigned long not uint            (Andre Hedrick)</li>
<li>Update ide-ppc (probably broken until some other changes go in) (Bartlomiej Zolnierkiewicz Andre Hedrick)</li>
<li>Fix bugs in the ide-cd -> ide-scsi pass over    (Andre Hedrick)</li>
<li>Kill GET_ERR macro in ide-disk                  (Andre Hedrick)</li>
<li>IDE dma hack fix for etrax - needs to be generalised       (Andre Hedrick)</li>
<li>Update as yet unused ide-lib code               (Andre Hedrick)</li>
<li>Fix types in ide_probe reporting                (Roman Zippel)</li>
<li>Add disable/enable irq probe handling           (Roman Zippel)</li>
<li>Fix non PCI IDE build problems                  (me)</li>
<li>Merge Matrox G450 updates                       (Petr Vandrovec)</li>
<li>Re-enable DRM for GMX2000 (it doesnt work yet)  (me)</li>

</ul>

</p>

</quote>

</section>

<section
  title="BYTE Unix Benchmarks Comparing 2.4 And 2.5"
  subject="BYTE Unix Benchmarks Version 3.6"
  archive=""
  posts="64"
  startdate="04 Sep 2002 14:00:55 -0800"
  enddate="10 Sep 2002 09:01:45 -0800"
>

<p>Paolo Ciarrocchi reported:</p>

<quote who="Paolo Ciarrocchi">

<p>I've just ran the BYTE Unix Benchmarks Version 3.6 on the 2.4.19 and on
the 2.5.33 kernel.  Here it goes the results:</p>

<pre>BYTE UNIX Benchmarks (Version 3.11)
  System -- Linux localhost.localdomain 2.4.19 #10 Fri Aug 23 20:53:06 BST 2002
i686 unknown
  Start Benchmark Run: Wed Sep  4 22:11:32 BST 2002
   1 interactive users.
Dhrystone 2 without register variables   1499020.6 lps   (10 secs, 6 samples)
Dhrystone 2 using register variables     1501168.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = arithoh)         3598100.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = register)        201521.0 lps   (10 secs, 6 samples)
Arithmetic Test (type = short)           190245.9 lps   (10 secs, 6 samples)
Arithmetic Test (type = int)             201904.5 lps   (10 secs, 6 samples)
Arithmetic Test (type = long)            201906.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = float)           210562.7 lps   (10 secs, 6 samples)
Arithmetic Test (type = double)          210385.9 lps   (10 secs, 6 samples)
System Call Overhead Test                407402.6 lps   (10 secs, 6 samples)
Pipe Throughput Test                     476268.6 lps   (10 secs, 6 samples)
Pipe-based Context Switching Test        218969.9 lps   (10 secs, 6 samples)
Process Creation Test                      9078.6 lps   (10 secs, 6 samples)
Execl Throughput Test                       998.0 lps   (9 secs, 6 samples)
File Read  (10 seconds)                  1571652.0 KBps  (10 secs, 6 samples)
File Write (10 seconds)                  109237.0 KBps  (10 secs, 6 samples)
File Copy  (10 seconds)                   24329.0 KBps  (10 secs, 6 samples)
File Read  (30 seconds)                  1562505.0 KBps  (30 secs, 6 samples)
File Write (30 seconds)                  113152.0 KBps  (30 secs, 6 samples)
File Copy  (30 seconds)                   14334.0 KBps  (30 secs, 6 samples)
C Compiler Test                             470.9 lpm   (60 secs, 3 samples)
Shell scripts (1 concurrent)                980.4 lpm   (60 secs, 3 samples)
Shell scripts (2 concurrent)                544.1 lpm   (60 secs, 3 samples)
Shell scripts (4 concurrent)                287.0 lpm   (60 secs, 3 samples)
Shell scripts (8 concurrent)                147.0 lpm   (60 secs, 3 samples)
Dc: sqrt(2) to 99 decimal places          42311.6 lpm   (60 secs, 6 samples)
Recursion Test--Tower of Hanoi            18915.4 lps   (10 secs, 6 samples)

                     INDEX VALUES
TEST                                        BASELINE     RESULT      INDEX  

Arithmetic Test (type = double)               2541.7   210385.9       82.8
Dhrystone 2 without register variables       22366.3  1499020.6       67.0
Execl Throughput Test                           16.5      998.0       60.5
File Copy  (30 seconds)                        179.0    14334.0       80.1
Pipe-based Context Switching Test             1318.5   218969.9      166.1
Shell scripts (8 concurrent)                     4.0      147.0       36.8
                                                                 =========
     SUM of  6 items                                                 493.2
     AVERAGE                                                          82.2

sh pgms/report.sh results/log > results/report
sh pgms/index.sh pgms/index.base results/log >> results/report
cat results/report

  BYTE UNIX Benchmarks (Version 3.11)
  System -- Linux localhost.localdomain 2.5.33 #32 Tue Sep 3 22:18:19 BST 2002
i686 unknown
  Start Benchmark Run: Wed Sep  4 20:46:31 BST 2002
   1 interactive users.
Dhrystone 2 without register variables   1488327.9 lps   (10 secs, 6 samples)
Dhrystone 2 using register variables     1488265.3 lps   (10 secs, 6 samples)
Arithmetic Test (type = arithoh)         3435944.6 lps   (10 secs, 6 samples)
Arithmetic Test (type = register)        197870.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = short)           145140.8 lps   (10 secs, 6 samples)
Arithmetic Test (type = int)             104440.5 lps   (10 secs, 6 samples)
Arithmetic Test (type = long)            177757.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = float)           208476.4 lps   (10 secs, 6 samples)
Arithmetic Test (type = double)          208443.3 lps   (10 secs, 6 samples)
System Call Overhead Test                397276.7 lps   (10 secs, 6 samples)
Pipe Throughput Test                     434561.9 lps   (10 secs, 6 samples)
Pipe-based Context Switching Test        148653.5 lps   (10 secs, 6 samples)
Process Creation Test                      5422.1 lps   (10 secs, 6 samples)
Execl Throughput Test                       771.6 lps   (10 secs, 6 samples)
File Read  (10 seconds)                  1553289.0 KBps  (10 secs, 6 samples)
File Write (10 seconds)                  132002.0 KBps  (10 secs, 6 samples)
File Copy  (10 seconds)                   17994.0 KBps  (10 secs, 6 samples)
File Read  (30 seconds)                  1540682.0 KBps  (30 secs, 6 samples)
File Write (30 seconds)                  137781.0 KBps  (30 secs, 6 samples)
File Copy  (30 seconds)                   11460.0 KBps  (30 secs, 6 samples)
C Compiler Test                             450.9 lpm   (60 secs, 3 samples)
Shell scripts (1 concurrent)                876.7 lpm   (60 secs, 3 samples)
Shell scripts (2 concurrent)                480.3 lpm   (60 secs, 3 samples)
Shell scripts (4 concurrent)                251.0 lpm   (60 secs, 3 samples)
Shell scripts (8 concurrent)                126.0 lpm   (60 secs, 3 samples)
Dc: sqrt(2) to 99 decimal places          33530.4 lpm   (60 secs, 6 samples)
Recursion Test--Tower of Hanoi            18514.3 lps   (10 secs, 6 samples)

                     INDEX VALUES
TEST                                        BASELINE     RESULT      INDEX

Arithmetic Test (type = double)               2541.7   208443.3       82.0
Dhrystone 2 without register variables       22366.3  1488327.9       66.5
Execl Throughput Test                           16.5      771.6       46.8
File Copy  (30 seconds)                        179.0    11460.0       64.0
Pipe-based Context Switching Test             1318.5   148653.5      112.7
Shell scripts (8 concurrent)                     4.0      126.0       31.5
                                                                 =========
     SUM of  6 items                                                 403.6
     AVERAGE                                                          67.3</pre>

</quote>

<p>Cliff White replied:</p>

<quote who="Cliff White">

<p>Always useful to compare. I think the data from STP show something simular. 
I've pulled some reports, rather than send a huge email, here are the URL's 
(btw STP runs v4.0.1 UNIXbench)</p>

<p> runs made on 2-CPU platform<br />
2.4.19: <a href="http://khack.osdl.org/stp/3877/results/report">http://khack.osdl.org/stp/3877/results/report</a><br />
2.5.33: <a href="http://khack.osdl.org/stp/4928/results/report">http://khack.osdl.org/stp/4928/results/report</a></p>

<p>Another compare...why does pre5 appear a little worse than pre4 ?<br />
2.4.20-pre5: <a href="http://khack.osdl.org/stp/4836/results/report">http://khack.osdl.org/stp/4836/results/report</a><br />
2.4.20-pre4: <a href="http://khack.osdl.org/stp/4581/results/report">http://khack.osdl.org/stp/4581/results/report</a></p>

</quote>

<p>Bert Hubert also said:</p>

<quote who="Bert Hubert">

Side-by-side with some marked changes highlighted:

<pre>                                        2.4.19           2.5.33
-----------------------------------------------------------------------
Dhrystone 2 without register variable   1499020.6 lps    1488327.9 lps
Dhrystone 2 using register variables    1501168.4 lps    1488265.3 lps
Arithmetic Test (type = arithoh)        3598100.4 lps    3435944.6 lps
Arithmetic Test (type = register)        201521.0 lps     197870.4 lps
Arithmetic Test (type = short)           190245.9 lps     145140.8 lps
Arithmetic Test (type = int)             201904.5 lps     104440.5 lps
Arithmetic Test (type = long)            201906.4 lps     177757.4 lps
Arithmetic Test (type = float)           210562.7 lps     208476.4 lps
Arithmetic Test (type = double)          210385.9 lps     208443.3 lps
System Call Overhead Test                407402.6 lps     397276.7 lps
<i>Pipe Throughput Test                    476268.6 lps     434561.9 lps</i>
<i>Pipe-based Context Switching Test       218969.9 lps     148653.5 lps</i>
<i>Process Creation Test                     9078.6 lps       5422.1 lps</i>
Execl Throughput Test                       998.0 lps        771.6 lps
File Read  (10 seconds)                 1571652.0 KBps   1553289.0 KBps   
File Write (10 seconds)                  109237.0 KBps    132002.0 KBps
<i>File Copy  (10 seconds)                  24329.0 KBps     17994.0 KBps</i>
File Read  (30 seconds)                 1562505.0 KBps   1540682.0 KBps
File Write (30 seconds)                  113152.0 KBps    137781.0 KBps
File Copy  (30 seconds)                   14334.0 KBps     11460.0 KBps
C Compiler Test                             470.9 lpm        450.9 lpm
Shell scripts (1 concurrent)                980.4 lpm        876.7 lpm
Shell scripts (2 concurrent)                544.1 lpm        480.3 lpm
Shell scripts (4 concurrent)                287.0 lpm        251.0 lpm
Shell scripts (8 concurrent)                147.0 lpm        126.0 lpm
<i>Dc: sqrt(2) to 99 decimal places         42311.6 lpm      33530.4 lpm</i>
Recursion Test--Tower of Hanoi            18915.4 lps      18514.3 lps


                      INDEX VALUES           2.4.19     2.5
 TEST                                        INDEX      INDEX

 Arithmetic Test (type = double)              82.8       82.0
 Dhrystone 2 without register variables       67.0       66.5
 Execl Throughput Test                        60.5       46.8
 File Copy  (30 seconds)                      80.1       64.0
 Pipe-based Context Switching Test           166.1      112.7
 Shell scripts (8 concurrent)                 36.8       31.5
                                         =========  =========
      SUM of  6 items                        493.2      403.6
      AVERAGE                                 82.2       67.3</pre>

</quote>

</section>

<section
  title="Kernel conf 0.4 Released"
  subject="linux kernel conf 0.4"
  archive=""
  posts="3"
  startdate="04 Sep 2002 16:11:43 -0800"
  enddate="05 Sep 2002 01:03:26 -0800"
>
<topic>Configuration</topic>
<topic>Disks: SCSI</topic>
<notopic>Disks</notopic>

<p>Roman Zippel announced:</p>

<quote who="Roman Zippel">

<p>At <a
href="http://www.xs4all.nl/~zippel/lc/lkc-0.4.tar.gz">http://www.xs4all.nl/~zippel/lc/lkc-0.4.tar.gz</a>
you can find the latest version of my config system. It slowly is becoming
completely usable, so it's time for a new release.  A lot has changed since
the last official release, so here only some highlights:</p>

<p>

<ul>

<li>correct dependencies for the config files are now generated, "make
oldconfig" isn't needed anymore in many cases (you should try it before
making any comments about it).</li>
<li>config rulebase is with some small (known) exceptions the same in the
old and new syntax, even comments are now preserved.</li>
<li>menuconfig is working again. Except of xconfig the user interface is
almost as before, anything you could do before, you still can do.</li>
<li>it's much faster in the common case.</li>
<li>clean separation between frontends and backend.</li>

</ul>

</p>

<p>Installation is very simple with "make install KERNELSRC=&lt;..&gt;", where
KERNELSRC points to a 2.5.33 kernel tree. "make uninstall KERNELSRC=&lt;..&gt;"
will deinstall everything.  I think the new system is ready for wider testing,
so any feedback is very much appreciated. Most important is probably the
new syntax, until it it's integrated I can easily change the converter to
generate whatever syntax. I still have to update the documentation, but the
syntax should be easily understandable even without it. For the lazy guys
out there, here is an (already advanced) example:</p>

<pre>choice
  prompt "Adaptec AIC7xxx support"
  optional
  depends SCSI

config SCSI_AIC7XXX
  tristate "New driver"
  help
  ...

config AIC7XXX_CMDS_PER_DEVICE
  int "Maximum number of TCQ commands per device"
  depends SCSI_AIC7XXX
  default "253"
  help
  ...

config AIC7XXX_RESET_DELAY_MS
  int "Initial bus reset delay in milli-seconds"
  depends SCSI_AIC7XXX
  default "15000"
  help
  ...

config AIC7XXX_BUILD_FIRMWARE
  boolean "Build Adapter Firmware with Kernel Build"
  depends SCSI_AIC7XXX

config SCSI_AIC7XXX_OLD
  tristate "Old driver"
  help
  ...

config AIC7XXX_OLD_TCQ_ON_BY_DEFAULT
  boolean "Enable Tagged Command Queueing (TCQ) by default"
  depends SCSI_AIC7XXX_OLD
  help
  ...

config AIC7XXX_OLD_CMDS_PER_DEVICE
  int "Maximum number of TCQ commands per device"
  depends SCSI_AIC7XXX_OLD
  default "8"
  help
  ...

config AIC7XXX_OLD_PROC_STATS
  boolean "Collect statistics to report in /proc"
  depends SCSI_AIC7XXX_OLD
  help
  ...

endchoice</pre>

<p>This new syntax basically fixes the recursive dependencies in the old
syntax:</p>

<pre>if [ "$CONFIG_SCSI_AIC7XXX_OLD" != "y" ]; then
   dep_tristate 'Adaptec AIC7xxx support' CONFIG_SCSI_AIC7XXX
$CONFIG_SCSI
   if [ "$CONFIG_SCSI_AIC7XXX" != "n" ]; then
      ...
   fi
fi
if [ "$CONFIG_SCSI_AIC7XXX" != "y" ]; then
   dep_tristate 'Old Adaptec AIC7xxx support' CONFIG_SCSI_AIC7XXX_OLD
$CONFIG_SCSI
   if [ "$CONFIG_SCSI_AIC7XXX_OLD" != "n" ]; then
      ...
   fi
fi</pre>

<p>The most important thing here is that you now always see that there is
a choice between two drivers. For example in menuconfig you had to know
that you have to disable one option to see the other option or if you have
an old .config, which doesn't contain CONFIG_SCSI_AIC7XXX_OLD, but has
CONFIG_SCSI_AIC7XXX set to 'y', "make oldconfig" won't tell you about the
new option.</p>

<p>Anyway, back to the new syntax. One thing I'm not yet completely sure about
is indention, as it might help to make above more easily readable.  The parser
automatically recognizes the suboptions (by analyzing the dependencies) and
the frontends present them accordingly (how exactly you should try yourself
:) ). The problem here are the help texts, they should be easily editable,
but on the other hand the parser has to find where it ends (and possibly
reformat it a bit). Right now the help text simply ends at the first line
that doesn't start with a white-space. So I'm toying with various ideas to
make the suboption more easily recognizable, e.g. they could also be put
within an "if FOO" ... "endif" block.</p>

<p>Something else above example demonstrates is the default value, first,
bool and tristate symbols can have default values as well and second,
something like this is possible:</p>

<pre>config FOO
  bool 'bar' if BAR
  default y</pre>

<p>The default value has two meanings here, first it's used as default
value for the prompt and if the prompt isn't visible, FOO is set to it.
This is quite useful for some of the advanced config options.</p>

<p>That's it for now, so have fun and complain _now_, not when it's too
late. :)</p>

</quote>

</section>

<section
  title="libaio Developer Confusion"
  subject="libaio 0.3.90 -- test release for sync up"
  archive=""
  posts="2"
  startdate="04 Sep 2002 21:17:55 -0800"
  enddate="05 Sep 2002 11:42:05 -0800"
>
<topic>Backward Compatibility</topic>

<mention>Shailabh Nagar</mention>

<p>Benjamin LaHaise said, <quote who="Benjamin LaHaise">Well, Andrea seems
to be trying to fork libaio, but he never sent any patches to me, so I
don't know what his complaint with me as maintainer is.  I hope he finds
it in his heart to submit *patches* for any changes he's making.  Anyways,
here's a test release going in the direction I've meant to for libaio-0.4.0 --
0.3.15 is a compatible release for folks running Red Hat Advanced Server and
does not break source/binary compatibility.  0.4.0 on the other hand breaks
source compatibility to match the changes made for 2.5, but should still
provide backwards compatible symbols.  I've also tossed the beginnings of
man pages in man/ for people to hack on (Alan, Bert you guys need to synch up
with each other on list).  ChangeLog bits are below, the test cases have not
been updated for the new API, nor has it been tested in any way mean or form.
I'll try to get a 0.3.91 out before I leave tomorrow afternoon, but if not
it will wait until Tuesday.</quote> Shailabh Nagar asked when folks could
expect to see some more core aio code in 2.5, but there was no reply.</p>

</section>

<section
  title="Searching For The autofs Maintainer"
  subject="Automount oops - who to report to?"
  archive=""
  posts="2"
  startdate="05 Sep 2002 01:26:46 -0800"
  enddate="05 Sep 2002 02:04:00 -0800"
>
<topic>FS: autofs</topic>

<mention>H. Peter Anvin</mention>
<mention>Axel Siebenwirth</mention>

<p>Ian Chard had some problems with autofs, but couldn't find out who the
maintainer was. Axel Siebenwirth wasn't sure but suspected it was H. Peter
Anvin. There was no reply.</p>

</section>

<section
  title="Linux 2.4.20-pre5-ac3 Released"
  subject="Linux 2.4.20-pre5-ac3"
  archive=""
  posts="14"
  startdate="05 Sep 2002 07:44:06 -0800"
  enddate="05 Sep 2002 15:24:01 -0800"
>
<topic>Disks: IDE</topic>
<topic>FS: ReiserFS</topic>
<topic>FS: procfs</topic>
<topic>I2C</topic>

<mention>Steven Cole</mention>

<p>Alan Cox announced:</p>

<quote who="Alan Cox">

<p>Next batch of backlog stuff, and one small Promise IDE fix. The backlog
is now basically clear.</p>

<p>Since master.kernel is currently being unhappy this patch can be found on <a
href="ftp://ftp2.linux.org.uk/pub/linux/people/alan/patches">ftp://ftp2.linux.org.uk/pub/linux/people/alan/patches</a>.
I'll upload it to kernel.org at some point later on.</p>

<p>Linux 2.4.20-pre5-ac3</p>

<p>

<ul>

<li>Fix procfs handling for zoran driver            (Silvio Cesare)</li>
<li>ZR36067 doesn't support bitmask clipping so error such a request.    (Silvio Cesare)</li>
<li>LBA48 on older promise IDE fix                  (Mike Isely)</li>
<li>Report jfs tools version in ver_linux           (Steven Cole)</li>
<li>HP XP arrays can need largelun                  (Steve Mickeler)</li>
<li>Allow maestro3 gpio amp control setup by nd for odd machines (Panasonic CF-72)       (Michael Olson)</li>
<li>Add autodetect to the CF-72 maestro3 funny      (me)</li>
<li>Fix overlarge read in vicam usb                 (Silvio Cesare)</li>
<li>Length limit S/390 cio proc write files         (Silvio Cesare)</li>
<li>Length limit S/390 chandev proc write files     (Silvio Cesare)</li>
<li>Length limut S/390 dasd statistics write        (Silvio Cesare)</li>
<li>Two fixes to 3270 driver for S/390              (Silvio Cesare, me)</li>
<li>Fix buffer limits in tubfs for S/390 | Really this code wants redoing to loop rather than do shorter read/writes on full buffers. but thats not trivial           (Silvio Cesare)</li>
<li>Use define values not magic constants on S/390 netiucv buffer checks (Silvio Cesare)</li>
<li>Correct a vmalloc corner case                   (Dave Miller)</li>
<li>Fix hisax oops with out of range card type      (Alan Hourihane)</li>
<li>Update Documentation/Changes for reiserfs       (Neils Jensen)</li>
<li>Fix incorrect type in i2c-core                  (Silvio Cesare)</li>
<li>Fix length limits in i2c-dev                    (Silvio Cesare)</li>
<li>Fix incorrect type in amdtp                     (Silvio Cesare)</li>
<li>Update Buslogic maintiners entry 8(</li>
<li>Don't register a gameport at I/O zero if none s configured on es1370, es1371,  (me)</li>
<li>Handle unprintable ac97 codec names (STAC)      (me)</li>
<li>Restructure pcigame and trident audio not to fall over each other   (me)</li>

</ul>

</p>

</quote>

</section>

<section
  title="IDE Developer Organization"
  subject="IDE cleanup (against 2.5.33) -- who takes these?"
  archive=""
  posts="2"
  startdate="05 Sep 2002 14:28:30 -0800"
  enddate="05 Sep 2002 14:56:53 -0800"
>
<topic>Disks: IDE</topic>

<p>Pavel Machek posted an IDE patch and asked, <quote who="Pavel Machek">Who
takes cleanup patches against 2.5.33? Alan is it you or should it go directly
to Linus?</quote> Alan Cox replied, <quote who="Alan Cox">Via Andre please, and
small cleanups like that can wait while we get the big stuff done.</quote></p>

</section>

<section
  title="Block Preallocation For ReiserFS"
  subject="[BK] ReiserFS PATCH resend (preallocation the default)"
  archive=""
  posts="1"
  startdate="06 Sep 2002 03:53:55 -0800"
>
<topic>FS: ReiserFS</topic>
<topic>SMP</topic>
<topic>Version Control</topic>

<p>Hans Reiser posted a patch and announced, <quote who="Hans
Reiser">This changeset enables preallocation of blocks on
reiserfs filesystems by default. Without this, SMP boxes seems
to have speed problems on some workloads.  You can get it from
bk://thebsh.namesys.com/bk/reiser3-linux-2.4</quote></p>

</section>

<section
  title="Linux 2.4.20-pre5-ac4 Released"
  subject="Linux 2.4.20-pre5-ac4"
  archive=""
  posts="18"
  startdate="06 Sep 2002 07:00:08 -0800"
  enddate="09 Sep 2002 06:40:35 -0800"
>
<topic>Big Memory Support</topic>
<topic>Disks: IDE</topic>
<topic>Kernel Release Announcement</topic>
<topic>Networking</topic>
<topic>PCI</topic>
<topic>USB</topic>

<mention>Jens Axboe</mention>
<mention>Adrian Bunk</mention>
<mention>Steven Cole</mention>
<mention>Oliver Neukum</mention>
<mention>Andre Hedrick</mention>
<mention>Bartlomiej Zolnierkiewicz</mention>

<p>Alan Cox announced 2.4.20-pre5-ac4:</p>

<quote who="Alan Cox">

<p>**<br />
**      WARNING: THIS IS THE NEXT BIG IDE UPDATE. ITS BOUND<br />
**      TO BREAK SOMETHING. DONT USE THIS ON DATA YOU CARE ABOUT<br />
**</p>

<p>Since kernel.org still seems down I've put this on <a
href="ftp://ftp2.linux.org.uk/pub/linux/people/alan/">ftp://ftp2.linux.org.uk/pub/linux/people/alan/</a></p>

<p>Linux 2.4.20-pre5-ac4</p>

<p>

<ul>

<li>Fix error path bug in pci resource code         (Keith)</li>
<li>Fix p4-clockmod compile error                   (Adrian Bunk)</li>
<li>Align packets nicely on kaweth USB ethernet     (Oliver Neukum)</li>
<li>Further Changes file fix                        (Steven Cole)</li>
<li>TCP timestamp handling fix                      (Dave Miller)</li>
<li>Compile warning fixes                           (Niels Jensen)</li>
<li>Next batch of IDE header updates                (Andre Hedrick)</li>
<li>IDE scsi update | Needs some highio cleanup yet                                (Andre Hedrick)</li>
<li>IDE DMA updates                                 (Andre Hedrick)</li>
<li>Update the IDE PCI driver layer                 (Andre Hedrick)</li>
<li>Fix pdc202xx further braindamage                (me)</li>
<li>Further icside fixes                    (Bartlomiej Zolnierkiewicz)</li>
<li>Fix ide-lib atapi DMA check             (Bartlomiej Zolnierkiewicz)</li>
<li>CMD64x rev 5/7 UDMA check fix           (Bartlomiej Zolnierkiewicz)</li>
<li>Add blk_fs_request helper                       (Jens Axboe)</li>
<li>IDE highmem fixes (scsi needs doing I suspect)            (Jens Axboe)</li>
<li>Longer PIO timeout for taskfile write           (Andre Hedrick)</li>
<li>Fix promise cable detect                        (Andre Hedrick)</li>
<li>Split promise into old and new drivers          (me)</li>

</ul>

</p>

</quote>

</section>

<section
  title="iowait Statistics Added To /proc/stat In 2.5"
  subject="[PATCH] iowait stats for 2.5.33"
  archive=""
  posts="2"
  startdate="06 Sep 2002 08:36:59 -0800"
  enddate="06 Sep 2002 09:03:05 -0800"
>

<p>Rik van Riel posted a patch and said:</p>

<quote who="Rik van Riel">

<p>the following patch, against 2.5.33-mm4, implements iowait statistics in
/proc/stat.  This can be used to determine how much of your machine's idle
time is truly idle and how much time it should have been doing something
but was waiting on (disk) IO instead.</p>

<p>Please add this to your patch queue or let me know if you want any changes
to it.</p>

</quote>

<p>Andrew Morton replied:</p>

<quote who="Andrew Morton">

<p>trivial:  I'd be inclined to use:</p>

<pre>void iowait_schedule()
{
        atomic_inc(...);
        schedule();
        atomic_dec(...);
}  </pre>

<p>less trivial: there are times when an io wait is deliberate:
in the context of balance_dirty_pages(), and (newly) in the 
context of page reclaim when current->backing_dev_info is
non-zero.</p>

<p>Given that this is a deliberate throttling sleep, perhaps it
should not be included in the accounting?   That way we only
account for the accidental, undesirable sleeps, and reads
and such.</p>

</quote>

</section>

<section
  title="New devlabel Program To Allow Consistent Device Access"
  subject="[ANNOUNCE] devlabel: consistent device access through symlinking"
  archive=""
  posts="2"
  startdate="06 Sep 2002 09:40:08 -0800"
  enddate="07 Sep 2002 05:34:43 -0800"
>
<topic>Disks: IDE</topic>
<topic>Disks: SCSI</topic>
<topic>Hot-Plugging</topic>
<topic>USB</topic>

<p>Update: After KT publication, Gary gave me a URL for <a
href="http://domsch.com/linux/devlabel/">the devlabel project</a>.</p>

<p>Gary Lerhaupt said:</p>

<quote who="Gary Lerhaupt">

<p>Attached is a program I have been working on to allow for consistent
access to storage devices.  It works by creating symlinks to actual storage
device names.  When coupled with the UUID of the disk in question, the symlink
can consistently point to the right data even if the device name changes.
Devices can thus be referenced by their symlink only and this symlink is
user-definable.</p>

<p>Moreover, I've incorporated it into the current hotplug system (I did my
testing on Red Hat 7.3/Advanced Server 2.1).  You should, for example, be
able to plug your flashcard reader into your USB slot, add a symlink to it
and then use this symlink as its reference.  Remove the cardreader from USB
and the symlink should disappear.  Re-insert and the symlink will come back.
This should also work for PCMCIA devices as well as IEEE1394 (firewire).
While patches are included with this RPM, the eventual idea would be to get
the code added directly into hotplug.</p>

<p>The UUIDs gathered vary dependent on the device in question.  For SCSI
(this includes USB/firewire) it will attempt to search for IDS in the following
order: Page83 type 3, Page83 type 2, Page83 type 1, Page 80, Page83 type 0,
Manufacturer/Model Name.  For IDE, it only looks in /proc/ide/hd#/identify
(words 10-19, the serial number).  In both cases it will always try to append
the manufacturer/model data so that in the event that your device does not
return any UUID (eg. megaraid) you will at least be able to use this as an ID.
However, if more than one device on your system returns the same ID, neither
will be usable with devlabel.  It is also worth noting that USB/Firewire stuffs
return the UUID of the reader and not of the storage contained within.  This is
not such a bad thing if you think about it, but you should probably label your
symlink accordingly  (eg. /dev/flashreader instead of /dev/flashdisk1).</p>

<p>Also included with the RPM is an rc.sysinit patch to run devlabel on boot.
I am not quite sure I have placed this correctly and this is important if
you wish to use your symlinks within /etc/fstab.  Want to make sure that
the symlink is correct before fstab gets ahold of it.  I may also consider
writing additional code to comment out references in fstab in the event that
the symlink has been deleted because the UUID can no longer be determined/found
(maybe a "restart safefstab" parameter or something).</p>

</quote>

<p>Daniel Egger replied, <quote who="Daniel Egger">Except that for source
RPMs sucking big time the stuff is REALLY cool!  I could also see benefits for
other devices like HID where the current ordering is done after a first come
- first serve approach where the minor device numbers follow the order the
devices appear on the bus which is quite easy to mess up and never consistent;
Applying your scheme to and-class devices also would allow to link whatever
device to a fixed device node which could solve many problems as far as I
can see.</quote></p>

</section>

<section
  title="IPMI Driver Direction"
  subject="[patch] Version 2 of the Linux IPMI driver"
  archive=""
  posts="5"
  startdate="06 Sep 2002 10:35:30 -0800"
  enddate="09 Sep 2002 09:07:43 -0800"
>
<topic>FS: devfs</topic>
<topic>I2C</topic>
<topic>Ioctls</topic>

<p>Corey Minyard announced:</p>

<quote who="Corey Minyard">

<p>I've cleaned a few things up and fixed some minor bugs.  The only big
change is renaming the "unused" address to the "system interface" address
(which makes a heck of a lot more sense).  I'm working on userland tools
that will tie in to this and to LAN/ICMB stuff, and there I saw the need for
the name.  I still haven't tested interrupt-driven operation, but that's
really a rather minor concern since almost no boards support it and the
driver will work without it.</p>

<p>You can get the patch on my web page at <a
href="http://home.attbi.com/~minyard">http://home.attbi.com/~minyard</a>,
relative to 2.5.33 or 2.4.19.  The patch is fairly self-contained, so it
should be easy to port to other kernel versions.</p>

<p>The lanana guy is not available for a while, so I'm not getting a device
number in the near future, but I think it's ready for the 2.5 release.
Does this need more time, or is it ready for inclusion?</p>

</quote>

<p>Matthew Wilcox replied:</p>

<quote who="Matthew Wilcox">

<p>I don't think you should be using a device number at all.  ioctl is Evil
(TM) and it's perfectly possible to write an IPMI driver which uses neither
an ioctl nor a chaacter device.  Voila:</p>

<p><a
href="http://ftp.linux.org.uk/pub/linux/willy/patches/bmc.diff">http://ftp.linux.org.uk/pub/linux/willy/patches/bmc.diff</a></p>

<p>yes, it was stupid to call it BMC instead of IPMI.  i was handed a pile of
junk that'd been half-heartedly ported from windows.  however, the principle
is sound, you don't need ioctl, nor a character device.</p>

</quote>

<p>This made no sense to Corey. He said:</p>

<quote who="Corey Minyard">

<p>You access a device as a filesystem?  That's bizarre.  It's a device, and
they call them "devices" in the kernel for a reason.  Why would you want to
do this?  Especially with devfs, the whole device numbering problem goes away.
You could easily make it a misc device.</p>

<p>Plus, your patch misses a lot of places where IPMI is going.  Many cards
have multiple IPMI interfaces (I have one that has three).  In multi-card
systems, IPMI is used for transport for a lot of configuration and control
information between cards that may be going to different applications
both inside the kernel and in userland, so a straight BMC interface is not
going to get you there.  You really need a message handler in the kernel.
You could do a message handler in userland, but then it makes implementing
watchdog timers and I2C interfaces kernel interfaces over IPMI much more
difficult, and it's a message router hooked directly to a device and it
makes some sense to put it in the kernel.</p>

<p>I toyed with the idea of making it a network interface, since you have
addressing that is separate from messaging.  However, it probably wasn't
worth the work for that.</p>

<p>And it wasn't stupid to call your "driver" BMC.  That's exactly what it is.
It's not IPMI, it's a KCS BMC interface (hooked in as a filesystem).</p>

</quote>

<p>Matthew said he knew his own patch had limitations, but he felt Corey's
implementation was wrong. He explained, <quote who="Matthew Wilcox">The point
is to get away from using character devices where we don't need them (and
we really don't need them in most places).  Plus, there's no dependency on
devfs with this approach.</quote> And Greg KH also added, <quote who="Greg
KH">devfs did not make the device numbering problem go away at all, you
still need to have a registered major/minor number with Lanana to use devfs.
Yes, you can ask for a dynamic misc number, but that is very difficult to
support.</quote></p>

</section>

<section
  title="UML 2.5.33 Released"
  subject="UML 2.5.33"
  archive=""
  posts="1"
  startdate="06 Sep 2002 13:48:48 -0800"
>
<topic>Networking</topic>
<topic>User-Mode Linux</topic>

<p>Jeff Dike announced:</p>

<quote who="Jeff Dike">

<p>UML has been updated to 2.5.33 and UML 2.4.19-2.</p>

<p>Other changes include<br />
        Fixed a couple of jail mode crashes<br />
        Fixed a crash caused by not properly copying the fpstate pointer during a signal delivery<br />
        Fixed a stupid typo in uaccess.h.<br />
        Ethernet devices now are guaranteed to end up with the same names that were specified on the command line</p>

<p>The patch is available at<br />
        <a href="http://uml-pub.ists.dartmouth.edu/uml/uml-patch-2.5.33-1.bz2">http://uml-pub.ists.dartmouth.edu/uml/uml-patch-2.5.33-1.bz2</a></p>

<p>For the other UML mirrors and other downloads, see<br />
        <a href="http://user-mode-linux.sourceforge.net/dl-sf.html">http://user-mode-linux.sourceforge.net/dl-sf.html</a></p>

<p>Other links of interest:</p>

<p>        The UML project home page : <a href="http://user-mode-linux.sourceforge.net">http://user-mode-linux.sourceforge.net</a><br />
        The UML Community site : <a href="http://usermodelinux.org">http://usermodelinux.org</a></p>

</quote>

</section>

<section
  title="e2compress Version 0.4.43 For Kernel 2.4 Released"
  subject="WEB site for e2compress patch on 2.4 kernel."
  archive=""
  posts="1"
  startdate="08 Sep 2002 23:08:22 -0800"
>
<topic>Compression</topic>
<topic>FS: ext2</topic>

<p>Denis Richard announced:</p>

<quote who="Denis Richard">

<p>A new WEB site  for the e2compress patch on the 2.4 kernel is available
at <a href="http://www.alizt.com">http://www.alizt.com</a> .</p>

<p>The last version of the patch to download, is 0.4.43 for the 2.4.17 linux
kernel.</p>

<p>The fixed bugs are :</p>

<p>

<ul>

<li>Deadlock correction between compressing cluster and sync of pages.</li>
<li>Management of MAPPED and DIRTY buffer flags.</li>
<li>Test of block numbers in compression.</li>
<li>Test if page is dirty to allocate buffer when compressing.</li>
<li>When decompressing cluster use the size of the cluster and not the size of the file, because it can be called from vmtruncate (the size of the file has already changed).</li>
<li>Management of working area lock.</li>
<li>When (de)compressing file containing holes, the data must be moved and not only the block number.</li>
<li>New function ext2_decompress_pages() to allocate blocks for a cluster already read (block decompressed). It is now called in ext2_decompress_cluster() and not only in ext2_file_write().</li>

</ul>

</p>

<p>Feel free to contact me if you have some problems.</p>

</quote>

</section>

<section
  title="Zerocopy NFS For 2.5.33"
  subject="[PATCH] zerocopy NFS for 2.5.33"
  archive=""
  posts="6"
  startdate="08 Sep 2002 23:11:23 -0800"
  enddate="09 Sep 2002 19:13:36 -0800"
>
<topic>FS: NFS</topic>
<topic>Networking</topic>

<p>Hirokazu Takahashi announced:</p>

<quote who="Hirokazu Takahashi">

<p>I updated the patches for zerocopy NFS. You can apply them against
linux-2.5.33 and zerocopy NFS over UDP/TCP works very fine.</p>

<p>

<ol>

<li><a
href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va10-hwchecksum-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va10-hwchecksum-2.5.33.patch</a><br />
This patch enables HW-checksum against outgoing packets including UDP
frames.</li>

<li>

<p><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va11-udpsendfile-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va11-udpsendfile-2.5.33.patch</a><br />
This patch makes sendfile systemcall over UDP work. It also supports
UDP_CORK interface which is very similar to TCP_CORK. And you can call
sendmsg/senfile with MSG_MORE flags over UDP sockets too.</p>

<p>Using TSO code is commented out at this moment as TSO for UDP isn't
implemented yet. I'm waiting for it so that we would remove "#ifdef NotYet"
to send jumbo UDP frames without any fragmentation and any checksumming.
Then I hope we will get great performance.</p>

</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va-csumpartial-fix-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va-csumpartial-fix-2.5.33.patch</a><br />
This patch fixes the problem of x86 csum_partilal() routines which
can't handle odd addressed buffers.</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va01-zerocopy-rpc-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va01-zerocopy-rpc-2.5.33.patch</a><br />
This patch makes RPC be able to send some pieces of data and pages
without any copies.</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va02-zerocopy-nfsdread-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va02-zerocopy-nfsdread-2.5.33.patch</a><br />
This patch makes NFSD pass pages in pagecache to RPC layer directly
when NFS clinets request file-read.</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va03-zerocopy-nfsdreaddir-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va03-zerocopy-nfsdreaddir-2.5.33.patch</a><br />
nfsd_readdir can also send pages without copy.</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va04-zerocopy-shadowsock-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va04-zerocopy-shadowsock-2.5.33.patch</a><br />
This patch makes per-cpu UDP sockets so that NFSD can send UDP frames on each
prosessor simultaneously.  Without the patch we can send only one UDP frame
at the time as a UDP socket have to be locked during sending some pages to
serialize them.</li>

<li><a href="ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va05-zerocopy-tempsendto-2.5.33.patch">ftp://ftp.valinux.co.jp/pub/people/taka/tune/2.5.33/va05-zerocopy-tempsendto-2.5.33.patch</a><br />
If you don't want to use sendfile over UDP yet, you can apply it instead
of 1) and 2) .</li>

</ol>

</p>

</quote>

<p>To the second paragraph of item 2, David S. Miller replied:</p>

<quote who="David S. Miller">

<p>Actually, device interface for what could be used is there, see
NETIF_F_FRAGLIST.  No devices set this and IP never makes use of it yet
though :-)</p>

<p>Acenic and Tigon3 will be able to do this, probably e1000 has this feature
as well.</p>

<p>But it does not work how you imagine.  One passes already fragmented
list of packets to card, and it can checksum the packet if you tell it which
descriptor is first of fragmented frame and which is last.</p>

<p>It does not do the fragmentation of UDP frames for you, only checksumming
of UDP portion.  No card does what you mention.</p>

</quote>

</section>

<section
  title="Taking Entropy From Video"
  subject="kernel &amp; entropy: introducing video-entropyd"
  archive=""
  posts="1"
  startdate="09 Sep 2002 10:02:16 -0800"
>
<topic>Random Number Generation</topic>

<p>Folkert van Heusden announced:</p>

<quote who="Folkert van Heusden">

<p>Copy &amp; paste from its webpage ( <a
href="http://www.vanheusden.com/ved/">http://www.vanheusden.com/ved/</a> ):</p>

<p>video-entropyd</p>

<p>For security reasons (when doing network traffic or generating secure
keys for example) one wants as much entropy-data in the kernel random-driver
as possible. The random-driver takes partially care for this itself. But in
situations in where there's a lot of demand for entropy-data, it might not
be able to gather enough entropy-data by itself.</p>

<p>That's where this program is for: adding entropy-data to the kernel-driver.
It does that by fetching 2 images from a video4linux-device (with a random
delay in between), calculating the difference between those two and then
calculating the number of information-bits in that data. After that, the data
with the number-of-entropy-bits is submitted to the kernel-random-driver.</p>

<p>After that, the program exits. That is because I am assuming you also
want to use your video4linux-device for other things. So run this program
every minute (or so) from crontab.</p>

<p>I tested this program with a Philips webcam.</p>

<p><a href="http://www.vanheusden.com/ved/">http://www.vanheusden.com/ved/
</a></p>

<p>You also might want to take a look at audio-entropyd: <a
href="http://www.mindrot.org/audio-entropyd.html">http://www.mindrot.org/audio-entropyd.html</a></p>

</quote>

</section>

<section
  title="LMbench 2.0 Benchmarks For Kernel 2.5.34"
  subject="LMbench2.0 results 2.5.34"
  archive=""
  posts="2"
  startdate="09 Sep 2002 13:23:53 -0800"
  enddate="09 Sep 2002 13:33:19 -0800"
>
<topic>Networking</topic>
<topic>Real-Time</topic>
<topic>Virtual Memory</topic>

<p>Paolo Ciarrocchi reported:</p>

<quote who="Paolo Ciarrocchi">

<p>I'm back with the result of LMbenche2.0 against 2.5.34. Same config of 2.5.33. </p>

<p>2.5.33 is preemption ON<br />
2.5.33x is preemption OFF<br />
2.5.34 is preemtpion ON</p>

<p>Hardware is a HP Omnibook 6000, 256 MiB of Ram, PIII@800. Hope it is intersting
for you.</p>

<p>cd results &amp;&amp; make summary percent 2&gt;/dev/null | more<br />
make[1]: Entering directory `/usr/src/LMbench/results'</p>

<pre>                 L M B E N C H  2 . 0   S U M M A R Y
                 ------------------------------------

Basic system parameters
----------------------------------------------------
Host                 OS Description              Mhz

--------- ------------- ----------------------- ----
frodo      Linux 2.4.18       i686-pc-linux-gnu  797
frodo      Linux 2.4.19       i686-pc-linux-gnu  797
frodo      Linux 2.5.33       i686-pc-linux-gnu  797
frodo     Linux 2.5.33x       i686-pc-linux-gnu  797
frodo      Linux 2.5.34       i686-pc-linux-gnu  797

Processor, Processes - times in microseconds - smaller is better
----------------------------------------------------------------
Host                 OS  Mhz null null      open selct sig  sig  fork exec sh
                             call  I/O stat clos TCP   inst hndl proc proc proc
--------- ------------- ---- ---- ---- ---- ---- ----- ---- ---- ---- ---- ----
frodo      Linux 2.4.18  797 0.40 0.56 3.18 3.97       1.00 3.18 115. 1231 13.K
frodo      Linux 2.4.19  797 0.40 0.56 3.07 3.88       1.00 3.19 129. 1113 13.K
frodo      Linux 2.5.33  797 0.40 0.61 3.78 4.76       1.02 3.37 201. 1458 13.K
frodo     Linux 2.5.33x  797 0.40 0.60 3.51 4.38       1.02 3.27 159. 1430 13.K
frodo      Linux 2.5.34  797 0.38 0.59 3.60 4.53       1.02 3.39 182. 1573 13.K

Context switching - times in microseconds - smaller is better
-------------------------------------------------------------
Host                 OS 2p/0K 2p/16K 2p/64K 8p/16K 8p/64K 16p/16K 16p/64K
                        ctxsw  ctxsw  ctxsw ctxsw  ctxsw   ctxsw   ctxsw
--------- ------------- ----- ------ ------ ------ ------ ------- -------
frodo      Linux 2.4.18 0.990 4.4200   13.8 6.2700  309.8    58.6   310.5
frodo      Linux 2.4.19 0.900 4.2900   15.3 5.9100  309.6    57.7   309.9
frodo      Linux 2.5.33 1.620 5.2800   15.3 9.3500  312.7    54.9   312.7
frodo     Linux 2.5.33x 1.040 4.3200   17.8 7.6200  312.5    49.9   312.5
frodo      Linux 2.5.34 1.520 5.2800   21.8 9.0800  312.2    39.0   311.9

*Local* Communication latencies in microseconds - smaller is better
-------------------------------------------------------------------
Host                 OS 2p/0K  Pipe AF     UDP  RPC/   TCP  RPC/ TCP
                        ctxsw       UNIX         UDP         TCP conn
--------- ------------- ----- ----- ---- ----- ----- ----- ----- ----
frodo      Linux 2.4.18 0.990 4.437 8.66
frodo      Linux 2.4.19 0.900 4.561 7.76
frodo      Linux 2.5.33 1.620 6.497 9.11
frodo     Linux 2.5.33x 1.040 4.888 8.70
frodo      Linux 2.5.34 1.520 7.142 8.51

File &amp; VM system latencies in microseconds - smaller is better
--------------------------------------------------------------
Host                 OS   0K File      10K File      Mmap    Prot    Page
                        Create Delete Create Delete  Latency Fault   Fault
--------- ------------- ------ ------ ------ ------  ------- -----   -----
frodo      Linux 2.4.18   68.9   16.0  185.8   31.6    425.0 0.789 2.00000
frodo      Linux 2.4.19   68.9   14.9  186.5   29.8    416.0 0.798 2.00000
frodo      Linux 2.5.33   77.8   19.1  211.6   38.3    774.0 0.832 3.00000
frodo     Linux 2.5.33x   77.2   18.8  206.7   37.0    769.0 0.823 3.00000
frodo      Linux 2.5.34   77.3   18.3  208.6   37.6    762.0 0.848 3.00000

*Local* Communication bandwidths in MB/s - bigger is better
-----------------------------------------------------------
Host                OS  Pipe AF    TCP  File   Mmap  Bcopy  Bcopy  Mem   Mem
                             UNIX      reread reread (libc) (hand) read write
--------- ------------- ---- ---- ---- ------ ------ ------ ------ ---- -----
frodo      Linux 2.4.18 810. 650.       181.7  203.7  101.5  101.4 203. 195.3
frodo      Linux 2.4.19 808. 680.       187.2  203.8  101.5  101.4 203. 190.1
frodo      Linux 2.5.33 571. 636.       185.6  202.5  100.5  100.4 202. 190.3
frodo     Linux 2.5.33x 768. 710.       185.4  202.5  100.5  100.4 202. 189.5
frodo      Linux 2.5.34 560. 670.       185.6  202.5  100.5  100.4 202. 190.5

Memory latencies in nanoseconds - smaller is better
    (WARNING - may not be correct, check graphs)
---------------------------------------------------
Host                 OS   Mhz  L1 $   L2 $    Main mem    Guesses
--------- -------------  ---- ----- ------    --------    -------
frodo      Linux 2.4.18   797 3.767 8.7890  158.9
frodo      Linux 2.4.19   797 3.767 8.7980  158.9
frodo      Linux 2.5.33   797 3.798 8.8660  160.1
frodo     Linux 2.5.33x   797 3.796   45.5  160.2
frodo      Linux 2.5.34   797 3.796 8.8760  160.2
make[1]: Leaving directory `/usr/src/LMbench/results'</pre>

</quote>

</section>

<section
  title="The Correct Use Of BUG()"
  subject="[BK PATCH] USB changes for 2.5.34"
  archive=""
  posts="37"
  startdate="09 Sep 2002 14:17:27 -0800"
  enddate="10 Sep 2002 15:01:16 -0800"
>
<topic>Debugging</topic>
<topic>FS</topic>
<topic>SMP</topic>
<topic>USB</topic>
<topic>Virtual Memory</topic>

<mention>Greg KH</mention>

<p>Greg KH posted a USB patch that included a BUG() call, and Linus Torvalds
took exception to that. Linus said, <quote who="Linus Torvalds">that BUG()
thing is _way_ out of line, and has killed a few of my machines several times
for no good reason. It actively hurts debuggability, because the machine is
totally dead after it, and the whole and ONLY point of BUG() messages is to
help debugging and make it clear that we can't handle something.</quote>
[...] <quote who="Linus Torvalds">Rule of thumb: BUG() is only good for
something that never happens and that we really have no other option for (ie
state is so corrupt that continuing is deadly).</quote> Greg said he'd fix it,
and Linus replied, <quote who="Linus Torvalds">I've just excluded it, with a
comment to never _ever_ kill the machine unless there is a major reason for
it.</quote> Alan Cox remarked, <quote who="Alan Cox">I'd have thought you may
well want the reverse. If the user didnt pick the kernel debugging, don't die
on software check option you want to blow up. If they are debugging or its &lt;
2.6.0-rc1 you want it to show the stack and keep going.</quote> Linus replied,
<quote who="Linus Torvalds">If it isn't fatal, there is no excuse for blowing
up. EVER.  That's _especially_ true for some random user who didn't ask for,
and can't handle debugging. If it's useful information that the developer
believes he wants, it shouldn't be conditional at all.</quote> He added:</p>

<quote who="Linus Torvalds">

<p>You definitely want to keep going regardless. A BUG() that takes out
the machine is just not useful, because users who aren't ready to debug it
can't even make any reports except "it stops" (which this one did if you
were under X - the machine was just _dead_).</p>

<p>Basically, with the amount of locking we have, a BUG() or a blow-up just
about anywhere is lethal. Most sequences (especially in drivers, but inside
filesystems etc too) tend to hold spinlocks etc that just makes it a bad
idea to BUG() out unless you really really have to, since the machine is not
likely to survive and be able to write good reports to disk etc at pretty
much any point.</p>

<p>(It used to be that you could take a fault just about anywhere except
for in interrupt handlers, and Linux would try its damndest to clean up and
continue as if nothing had happened. Those days are sadly gone, and trapping
and depending on killing the process seldom works well any more).</p>

<p>On the whole, it's a lot better to just print out a message (and call
traces are often very useful) and continue. That's not always possible,
of course, and a lot of BUG() and BUG_ON() cases are perfectly valid simply
because sometimes there isn't anything you can do except kill the machine
and try to inform the user.</p>

<p>I think the historical kernel behaviour ("trap and kill and continue"
historically worked so fine for _both_ major bugs and for "random sanity test"
cases) has caused us to be a bit lazy about this sometimes.</p>

</quote>

<p>Elsewhere, he added:</p>

<quote who="Linus Torvalds">

<p>The fact is, BUG() is almost always the wrong thing to do. And it's almost
_guaranteed_ to be the wrong thing to do in a driver, since a driver won't
know what locks the rest of the kernel is holding, _and_ since it's almost
always possible for a driver to try to return an error code instead.</p>

<p>In short:</p>

<blockquote>

<p>Either you want debugging (in which case BUG() is the wrong thing to
  do), or you don't want debugging (in which case BUG() is the wrong thing
  to do). You can choose either, but in neither case is BUG() acceptable.</p>

<p>BUG() is fine for _fundamental_ problems, where you don't have any other
  choice, and where the machine really is effectively dead anyway. If the
  VM notices that it's lists are corrupt, that's a BUG() thing. We don't
  have much choice. If the scheduler notices that it's running on another
  CPU than it thought it was running on, that's a BUG() thing.</p>

</blockquote>

<p>Now, the kernel problem may be that BUG() is a bit too easy to use,
and the alternatives are not. We should fix that. But we shouldn't fix it
by using BUG() in places where it definitely doesn't belong.</p>

</quote>

<p>But he replied to himself:</p>

<quote who="Linus Torvalds">

<p>There are probably good exceptions to this rule, like any rule.</p>

<p>For example, if the request queue (or some other fundamental internal
data structure) is found to be corrupted, I couldn't really fault a driver
for BUG()'ing out on it. It's not as if the driver could sanely even do an
end_request() in that case.</p>

<p>But even broken hardware is not a reason for a BUG(). For example,
if the driver notices that some part of the controller is hung hard (ie
provable hardware problem), the last thing it should do is to bring the
system down. It should fail the IO, and maybe turn itself off, but let the
system continue otherwise.</p>

<p>One of the best things I ever did from a debuggability standpoint was to
almost never use panic() in the base kernel, and make various kernel page
faults etc just try to kill the offender and go on.</p>

<p>Sometimes that "try to continue" approach ends up being nasty too (the
problem repeats and you end up with a dead machine that scrolls infinite bug
reports off the screen, making them really hard to catch), but on the whole
it tends to make things much easier to debug ("oops, I just lost my floppy
drive, let's save the messages on the harddisk and reboot").</p>

</quote>

<p>David Brownell summed up Linus' approach by saying, <quote who="David
Brownell">Or in even shorter sound bite format:  "Just say no to
BUG()s."</quote> But Linus replied:</p>

<quote who="Linus Torvalds">

<p>Well, the thing is, BUG() _is_ sometimes useful. It's a dense and very
convenient way to say that something catastrophic happened.</p>

<p>And actually, outside of drivers and filesystems you can often know (or
control) the number of locks the surrounding code is holding, and then a BUG()
may not be as lethal. At which point the normal "oops and kill the process"
action is clearly fine - the machine is still perfectly usable.</p>

<p>(In fact, on UP a BUG() tends to be quite usable just about anywhere
except in an interrupt handler: there may be some local locks like directory
semaphores etc that are held and not released, but _most_ of the time the
machine is quite usable. SMP really does make things harder to debug even
quite apart from the races it introduces. Sad.)</p>

</quote>

</section>

<section
  title="Support For ALi 5451 Gameport"
  subject="[PATCH] 2.4.20-pre5-ac4: Add support for ALi 5451 gameport"
  archive=""
  posts="3"
  startdate="09 Sep 2002 15:24:56 -0800"
  enddate="10 Sep 2002 05:40:12 -0800"
>
<topic>PCI</topic>
<topic>Sound</topic>

<p>Pascal Schmidt posted a patch and announced:</p>

<quote who="Pascal Schmidt">

<p>This patch adds support for the gameport found on ALi 5451 chips to
drivers/sound/trident.c and drivers/char/joystick/pcigame.c. The ALi 5451
gameport works just like a Trident 4DWave gameport, so the patch just adds
the ALi device id in the relevant places.</p>

<p>Patch against 2.4.20-pre5-ac4 since that has the necessary code to use
trident and pcigame at the same time.</p>

<p>Tested and found working on a Soyo K7ADA motherboard (ALi Magik1
chipset).</p>

</quote>

<p>Vojtech Pavlik replied, <quote who="Vojtech Pavlik">Very nice. I think
this is for Alan. For normal 2.4, as you said, the pcigame.c code isn't much
useful, because doesn't cooperate well with the trident.c code. For 2.5,
pcigame code is embedded into trident.c to make things simpler.</quote> And
Alan Cox said, <quote who="Alan Cox">I fixed that in 2.4 by making pcigame
look for devices if the sound card isnt compiled in for them, otherwise
provide pcigame_attach and pcigame_release functions that drivers can use
to attach pci mmio joystick interfaces to their hardware. Works very nicely
and saves embedded one completely in the other.</quote></p>

</section>

<section
  title="Updated Preemptible Kernel"
  subject="[patch] 2.4: updated preemptable kernel"
  archive=""
  posts="1"
  startdate="09 Sep 2002 16:22:30 -0800"
>
<topic>Real-Time</topic>

<p>Robert Love announced:</p>

<quote who="Robert Love">

<p>Updated fully preemptive kernel patches are available at:</p>

<p>        2.4.19:
<a href="http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.19-2.patch">http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.19-2.patch</a><br />
        2.4.20-pre5:
<a href="http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.20-pre5-1.patch">http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.20-pre5-1.patch</a><br />
        2.4.20-pre5-ac4:
<a href="http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.20-pre5-ac4-1.patch">http://www.kernel.org/pub/linux/kernel/people/rml/preempt-kernel/v2.4/preempt-kernel-rml-2.4.20-pre5-ac4-1.patch</a></p>

<p>and your favorite mirrors.</p>

<p>These releases contain some of the recent fixes from 2.5.  Note new
design features of kernel preemption will most likely not be back-ported
from 2.5; just fixes to the existing infrastructure.</p>

<p>The above patches include fixes for the "preempting with interrupts
disabled" bug as well as some other misc. issues.  Note they are not per
se in sync with 2.5 or each other yet...</p>

</quote>

</section>

<section
  title="Linux Test Project 20020910 Released"
  subject="[ANNOUNCE] ltp-20020910 released"
  archive=""
  posts="1"
  startdate="10 Sep 2002 13:08:31 -0800"
>
<topic>Bug Tracking</topic>
<topic>FS: JFS</topic>
<topic>FS: NFS</topic>
<topic>Version Control</topic>

<mention>Matthew Wilcox</mention>
<mention>Paul Larson</mention>
<mention>Andrea Arcangeli</mention>
<mention>Jeff Martin</mention>
<mention>Andreas Jaeger</mention>
<mention>Randy Hron</mention>

<p>Robert Williamson announced:</p>

<quote who="Robert Williamson">

<p>The Linux Test Project test suite LTP-20020910.tgz
has been released.  Visit our website ( &lt;<a
href="http://ltp.sourceforge.net">http://ltp.sourceforge.net</a>&gt;
) to download the latest version of the testsuite, and for
information on test results on pre-releases, release candidates
&amp; stable releases of the kernel. There is also a list of test
cases that are expected to fail, please find the list at &lt;<a
href="http://ltp.sourceforge.net/expected-errors.php">http://ltp.sourceforge.net/expected-errors.php</a>&gt;</p>

<p>The highlights of this release are:</p>

<p>

<ul>

<li>New "utils" section created and added to the CVS tree.  This repository
  will hold various utilities, including kernel coverage analysis tools
  and STAX execution scripts.</li>

<li>LTP website has been modified to contain detailed information about
  kernel code coverage, including details on lcov (LTP's GCOV extension)
  and documentation on how to use lcov for generating coverage
  information.</li>

<li>New test driver created that runs over the STAf eXecution (STAX) service
  of the Software Test Automation Framework (STAF) &lt;<a
  href="http://staf.sourceforge.net">http://staf.sourceforge.net</a>&gt;. The
  driver is available to download from the "Utilities" category of the Files
  section, as well as the "utils" section of the CVS tree.</li>

<li>Documentation on configuration and use of the new STAX LTP driver, with
  screenshots, posted on LTP website.</li>

</ul>

</p>

<p>We encourage the community to post results, patches, or new tests on our
mailing list, and to use the CVS bug tracking facility to report problems
that you might encounter. More details available at our web-site.</p>

<pre>Change Log
------------
- Fix path in runpan.sh                          ( Paul Larson )  
- runtest/syscalls:
        a.Removed the {} from the environment    ( Robbie Williamson )
          variables
        b.Comment out stime01, since it sets     ( David Barrera )
          the system time forward and could
          cause problems with several other
          tests if it's running at the same
          time (-x nn)
- Renamed the fsx-linux test on nfs to           ( Robbie Williamson )
  "nfsx-linux"
- fsxtest: Added code to handle JFS.             ( Robbie Williamson )
- ld01: Made the diff case insensative for       ( Robbie Williamson )
  cross-platform compatibility.
- Removed obsolete test, "ulimit", from          ( Robbie Williamson)
  automatic build and install.
- Moved the 'chown' commands to "install"        ( Robbie Williamson )
  section in 'Makefile' of fchmod tests
- Applied patches for s390                       ( Susanne Wintenberger )
- Applied patches for IA64                       ( Jacky Malcles )
- Applied patch for adding some missing includes ( Andreas Jaeger )
  to remove warnings about missing prototypes
- Applied x86-64 patch for ldd01                 ( Andreas Jaeger )
- Fix for ar01 hang when filesystem is full      ( Paul Larson )
- Make ltp run with uClibc                       ( Steven J. Hill )
- Fix compiler warnings in various tests         ( Xiao Feng Shi )
- Clean up many of the mktemp warnings           ( Paul Larson )
  And use mkstemp in tst_tmpdir()
- Applied pan/logfile/tools patches.             ( William J. Huie )
- Use regular instead of mandatory locks in      ( Matthew Wilcox )
  fcntl09, fcntl10, fcntl11 to fix with NFS
- Fix pids in fcntl11, fcntl19, fcntl20, fcntl21 ( Paul Larson )
  to be pid_t instead of short for 2.5 compat
- Add command line options to runalltests.sh to  ( Randy Hron,
  allow setting of various pan options and         Paul Larson,
  changing the temp directory                      Nate Straz )
- Added automation script documentation          ( Jeff Martin )
  to /doc directory.
- Patched nanosleep02.c to correctly test the    ( Andrea Arcangeli )
  functionality and avoid false positives.</pre>

</quote>

</section>

<section
  title="Kernel conf 0.5 Released"
  subject="linux kernel conf 0.5"
  archive=""
  posts="5"
  startdate="10 Sep 2002 15:16:47 -0800"
  enddate="11 Sep 2002 03:51:52 -0800"
>
<topic>Kernel Build System</topic>

<p>Roman Zippel announced:</p>

<quote who="Roman Zippel">

<p>At <a
href="http://www.xs4all.nl/~zippel/lc/lkc-0.5.tar.gz">http://www.xs4all.nl/~zippel/lc/lkc-0.5.tar.gz</a>
you can find the latest version of the new config system. Besides various
small bug fixes, it includes the following changes:</p>

<p>

<ul>

<li>Improved mouse interface of qconf</li>
<li>qconf isn't build if QT isn't available</li>
<li>"if" ... "endif" block added</li>
<li>update to 2.5.35</li>

</ul>

</p>

<p>With the exception of the X interface I'm not planning any big visible
changes anymore, so slowly I'd like to know any reason, why this config system
shouldn't go into 2.5.x. The old arguments against cml2 don't really work
anymore, so you have to come up with something new. :-) The only argument
I know of is that various people on kbuild mailing list are afraid, that
Linus wouldn't accept such a big change. I think hardly anyone cares how
the config backend is implemented, so the only really visible change is the
new config format, but here only the format is new, the information is still
the same (if anyone cares about the subtle differences, I can explain them
separately). Making a clear cut now is really the easiest solution. Changing
parsers and syntax separately would be more painful, as we risks constants
subtle behaviour changes and bugs during this period, by doing a single
switch we can quickly get over it.</p>

<p>Otherwise the little feedback I got was mostly positive, so if anything
thinks the old config system is in any way better, I'd really like to
know about it now (and if anyone wants to keep the old system, (s)he just
volunteered to fix all the subtle differences between the three different
parsers). So unless I hear objections rather soon, it's up to Linus.</p>

</quote>

</section>

<section
  title="2.5 Status Report For September 11"
  subject="[STATUS 2.5]  September 11, 2002"
  archive=""
  posts="1"
  startdate="10 Sep 2002 16:38:18 -0800"
>
<topic>Networking</topic>

<p>Guillaume Boissiere announced the 2.5 status report for <a
href="http://kernelnewbies.org/status/Status-11-Sep-2002.html">September 11</a>
and said, <quote who="Guillaume Boissiere">Here is this week's 2.5 update.
Of note, discontigmem support and TCP segmentation offload have been merged
since last week.</quote></p>

</section>

<section
  title="2.5 Problem Status Report"
  subject="2.5 Problem Status Report"
  archive=""
  posts="29"
  startdate="10 Sep 2002 18:00:30 -0800"
  enddate="11 Sep 2002 12:23:20 -0800"
>
<topic>Disks: IDE</topic>
<topic>FS: JFS</topic>
<topic>FS: ext2</topic>
<topic>Forward Port</topic>
<topic>PCI</topic>
<topic>Version Control</topic>

<p>Thomas Molina announced the 2.5 problem status report:</p>

<quote who="Thomas Molina">

<p>The most current version of this status report can be found at: <a
href="http://members.cox.net/tmolina/kernprobs/status.html">http://members.cox.net/tmolina/kernprobs/status.html</a></p>

<pre>   Notes:
     * Several  people  have  requested  the  discussion be linked to LKML
archives. With this version I've switched from
       locally edited discussion threads to archived links.
     * Great  progress has been made in forward porting IDE driver code
from 2.4 to 2.5. Several people have tried 2.5.33
       without disaster. Updates continue to be added to the -ac kernels
and the 2.5 bitkeeper kernels.
     * Floppy  support  appears to have been fixed in 2.5.33-bitkeeper. It
has been tested, and the corruption previously
       seen has not been duplicated.
     * Support for __FUNCTION__ pasting is being phased out of gcc. This
has broken compiling in numerous places. Defines
       of the form:
       #define func_enter() sx_dprintk (SX_DEBUG_FLOW, "sx: enter "    
__FUNCTION__ "\n")
       need to be changed to the form:
       #define func_enter() sx_dprintk (SX_DEBUG_FLOW, "sx: enter %s\n", 
__FUNCTION__)

              2.5 Kernel Problem Reports as of 10 Sep
   Problem Title                Status                Discussion
   JFS oops                     open                  06 Sep 2002
   qlogicisp oops               no further discussion 2.5.33
   2.5.32 reboot oops           no further discussion 2.5.33  
   ext2 umount oops             no further discussion 2.5.33
   DEBUG_SLAB oops              no further discussion 2.5.33
   2.5.32-mm1 problems          no further discussion 2.5.33
   soft suspend problem         no further discussion 2.5.33   
   PCI and/or starfire.c broken no further discussion 2.5.33
   __write_lock_failed() oops   no further discussion 2.5.33
   invalidate_inode_pages       open                  10 Sep 2002
   Problem running on Athlons   open                  06 Sep 2002
   dequeue_signal panic                               08 Sep 2002
                                closed                09 Sep 2002
   mouse/keyboard flakiness     open                  09 Sep 2002
   process hang in do_IRQ       open                  09 Sep 2002
   do_syslog lockup             open                  09 Sep 2002
   BUG at kernel/sched.c        open                  10 Sep 2002</pre>

</quote>

</section>

<section
  title="Timpanogas Sells Intellectual Property To Canopy Group"
  subject="[ANNOUNCE] Timpanogas Research Group IP Assigned to Canopy Group"
  archive=""
  posts="1"
  startdate="11 Sep 2002 22:08:57 -0800"
>

<p>Jeff V. Merkey said:</p>

<quote who="Jeff V. Merkey">

<p>Please be advised that all TRG Intellectual Property has been sold for
an undisclosed amount to the Canopy Group in Lindon, Utah.</p>

<p>Any inquiries regarding future or pending projects regarding any issues
with any Linux projects or source code maintained by TRG for Linux should
be directed to info@timpanogas.org.  These requests will be forwarded to
the appropriate party.</p>

<p>NWFS and all other Linux projects have been assigned as of this date
to the Canopy Group.  Please direct any future inquiries to the address
specified above.</p>

<p>I will continue to work on approved Linux projects in my new capacity at
Network Associates.  I can be reached at jmerkey@nai.com.  If your questions
are regarding any TRG specific code, please send these inquiries to the
timpanogas.org address specified above.</p>

</quote>

</section>

</kc>

