<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="35" date="20 Sep 1999 00:00:00 -0800" />

<intro>

<p>Well, the migration to Linuxcare is complete, but there are still more
layout changes to be done. Expect subtle changes over the coming weeks. Your
suggestions and reactions will have influence, although I've received only a
handful of responses so far.</p>

</intro>

<stats posts="1097" size="4500" contrib="439" multiples="174" lastweek="128">

<person posts="70" size="182" who="Alan Cox " />
<person posts="46" size="208" who="Andrea Arcangeli " />
<person posts="19" size="54" who="" />
<person posts="18" size="153" who="David Weinehall " />
<person posts="16" size="59" who="Manfred Spraul " />
<person posts="16" size="55" who="Jens Axboe " />
<person posts="15" size="71" who="Andre Hedrick " />
<person posts="15" size="58" who="Robert Dinse " />
<person posts="14" size="48" who="&quot;Stephen C. Tweedie&quot; " />
<person posts="13" size="46" who="&quot;Richard B. Johnson&quot; " />
<person posts="13" size="45" who=" (Rogier Wolff)" />
<person posts="13" size="45" who="M Carling " />
<person posts="12" size="82" who="Pavel Machek " />
<person posts="11" size="47" who="Jeff Garzik " />
<person posts="10" size="47" who="Martin Mares " />
<person posts="10" size="27" who="&quot;David S. Miller&quot; " />
<person posts="9" size="30" who="Linus Torvalds " />
<person posts="9" size="29" who="" />
<person posts="8" size="60" who="Thomas Sailer " />
<person posts="8" size="28" who="Wade Hampton " />
<person posts="8" size="22" who="Jamie Lokier " />
<person posts="8" size="20" who="Richard Gooch " />
<person posts="7" size="50" who="Artur Skawina " />
<person posts="7" size="30" who="" />
<person posts="7" size="25" who=" (H. Peter Anvin)" />
<person posts="7" size="24" who="&quot;Khimenko Victor&quot; " />
<person posts="7" size="23" who=" (Guest section DW)" />
<person posts="7" size="22" who="David Woodhouse " />
<person posts="7" size="21" who="Horst von Brand " />
<person posts="7" size="17" who="Tim Waugh " />
<person posts="6" size="76" who="Chuck Mead " />
<person posts="6" size="33" who="" />
<person posts="6" size="27" who=" (Dietmar Stein)" />
<person posts="6" size="24" who="Fred Reimer " />
<person posts="6" size="24" who="&quot;Sean Hunter&quot; " />
<person posts="6" size="22" who=" (david parsons)" />
<person posts="6" size="20" who="Tigran Aivazian " />
<person posts="6" size="19" who="Steve Dodd " />
<person posts="5" size="29" who="&quot;Jeff Merkey&quot; " />
<person posts="5" size="27" who="&quot;Stephen D. Williams&quot; " />
<person posts="5" size="24" who="Thomas Gschwendtner " />
<person posts="5" size="21" who="&quot;Stuart Inglis&quot; " />
<person posts="5" size="21" who="Simon Richter " />
<person posts="5" size="19" who="" />
<person posts="5" size="17" who="Matthew Wilcox " />
<person posts="5" size="16" who="Lauri Tischler " />
<person posts="5" size="16" who="&quot;Stefan Monnier&quot; " />
<person posts="5" size="15" who="&quot;WANG,YIDING (HP-SanJose,ex1)&quot; " />
<person posts="4" size="19" who="&quot;Steven N. Hirsch&quot; " />
<person posts="4" size="17" who="&quot;Stephen D. WIlliams&quot; " />
<person posts="4" size="16" who="Raymond Nijssen " />
<person posts="4" size="16" who="Riley Williams " />
<person posts="4" size="14" who="" />
<person posts="4" size="13" who="CaT " />
<person posts="4" size="13" who="Jan Kara " />
<person posts="4" size="12" who="&quot;Roman Mitnitski&quot; " />
<person posts="4" size="12" who="David Hinds " />
<person posts="4" size="11" who="&quot;Joshua M. Thompson&quot; " />
<person posts="4" size="11" who="Pete Clements " />
<person posts="4" size="11" who="Keith Owens " />
<person posts="4" size="11" who="Oliver Xymoron " />
<person posts="4" size="10" who="Paul Ashton " />
<person posts="3" size="75" who="" />
<person posts="3" size="29" who="&quot;Joe Pranevich&quot; " />
<person posts="3" size="23" who="Thomas Molina " />
<person posts="3" size="22" who="Miles Lane " />
<person posts="3" size="17" who="&quot;Chris D. Faulhaber&quot; " />
<person posts="3" size="16" who="Simon Kirby " />
<person posts="3" size="15" who="&quot;Peter Goh&quot; " />
<person posts="3" size="14" who="Alexander S A Kjeldaas " />
<person posts="3" size="13" who="Gadi Oxman " />
<person posts="3" size="12" who="Larry McVoy " />
<person posts="3" size="12" who="&quot;Chris Jones&quot; " />
<person posts="3" size="12" who="Benno Senoner " />
<person posts="3" size="12" who="&quot;Mike Black&quot; " />
<person posts="3" size="12" who="Stephen Frost " />
<person posts="3" size="11" who="" />
<person posts="3" size="11" who="&quot;Mr. James W. Laferriere&quot; " />
<person posts="3" size="11" who="The Doctor What " />
<person posts="3" size="10" who="&quot;Theodore Y. Ts'o&quot; " />
<person posts="3" size="10" who="Alexandre Hautequest " />
<person posts="3" size="10" who="Mikael Pettersson " />
<person posts="3" size="10" who="Zack Weinberg " />
<person posts="3" size="10" who="&quot;Andreas K. Huettel&quot; " />
<person posts="3" size="9" who="Rui Sousa " />
<person posts="3" size="9" who="Jon Masters " />
<person posts="3" size="9" who="Benjamin LaHaise " />
<person posts="3" size="9" who="&quot;Robert K. Nelson&quot; " />
<person posts="3" size="9" who="Joshua Brandon Myer " />
<person posts="3" size="9" who="Jens Benecke " />
<person posts="3" size="9" who="Thomas Habets " />
<person posts="3" size="9" who="Rik van Riel " />
<person posts="3" size="8" who="" />
<person posts="3" size="8" who="Matthew Kirkwood " />
<person posts="3" size="8" who="Marco Colombo " />
<person posts="3" size="8" who="fito " />
<person posts="3" size="8" who="Jeff Garzik " />
<person posts="3" size="8" who="Arnaldo Carvalho de Melo " />
<person posts="3" size="6" who="&quot;Garst R. Reese&quot; " />
<person posts="2" size="30" who="&quot;Beau Gales&quot; " />
<person posts="2" size="25" who="" />
<person posts="2" size="22" who="Tim Ricketts " />
<person posts="2" size="14" who="Simon Vogl " />
<person posts="2" size="13" who="Martin Schenk " />
<person posts="2" size="12" who="Trond Myklebust " />
<person posts="2" size="11" who="Peter Hanecak " />
<person posts="2" size="11" who="Vincent Stemen " />
<person posts="2" size="10" who="&quot;Bill Rugolsky Jr.&quot; " />
<person posts="2" size="10" who="Okke Timm " />
<person posts="2" size="9" who="&quot;Rafael D'Halleweyn&quot; " />
<person posts="2" size="9" who="Philippe Troin " />
<person posts="2" size="9" who="David Lang " />
<person posts="2" size="9" who="David Wragg " />
<person posts="2" size="8" who="david parsons " />
<person posts="2" size="8" who="tommiy " />
<person posts="2" size="8" who="Benjamin Carter " />
<person posts="2" size="8" who="&quot;Petr Vandrovec Ing. VTEI&quot; " />
<person posts="2" size="8" who="BOSZORMENYI Zoltan " />
<person posts="2" size="8" who="Nick Holloway " />
<person posts="2" size="8" who=" (Edmund Bacon)" />
<person posts="2" size="7" who=" (Alexander L. Belikoff)" />
<person posts="2" size="7" who="Joe " />
<person posts="2" size="7" who="Chuck Lever " />
<person posts="2" size="7" who="Chris Lawrence " />
<person posts="2" size="7" who="&quot;John J. LeMay Jr.&quot; " />
<person posts="2" size="7" who="Mike Galbraith " />
<person posts="2" size="7" who="Clayton Weaver " />
<person posts="2" size="7" who=" (Scott Lurndal)" />
<person posts="2" size="7" who="Daniel Zepeda " />
<person posts="2" size="7" who="John Kacur " />
<person posts="2" size="7" who="David Mosberger " />
<person posts="2" size="7" who="Camm Maguire " />
<person posts="2" size="7" who="David Mansfield " />
<person posts="2" size="7" who="&quot;Daniel J Blueman&quot; " />
<person posts="2" size="7" who="&quot;Gerhard.Stegmann&quot; " />
<person posts="2" size="6" who="Matthew " />
<person posts="2" size="6" who="Wakko Warner " />
<person posts="2" size="6" who="=?iso-8859-1?Q?Peter_Sj=F6berg?= " />
<person posts="2" size="6" who="Michael Elizabeth Chastain " />
<person posts="2" size="6" who="Marko Schulz " />
<person posts="2" size="6" who="&quot;Nicholas Waltham&quot; " />
<person posts="2" size="6" who="Patrick Lerda " />
<person posts="2" size="6" who="DAVID BALAZIC " />
<person posts="2" size="6" who="&quot;Marcus&quot; " />
<person posts="2" size="6" who="Mooneer Salem " />
<person posts="2" size="6" who="Andy Sloane " />
<person posts="2" size="6" who="Johannes Erdfelt " />
<person posts="2" size="6" who="Andreas Dilger " />
<person posts="2" size="6" who="Andreas Schwab " />
<person posts="2" size="6" who="&quot;G. Allen Morris III&quot; " />
<person posts="2" size="6" who="John Goerzen " />
<person posts="2" size="6" who=" (Nick Holloway)" />
<person posts="2" size="6" who="Hugh Anderson " />
<person posts="2" size="6" who="Paul Mackerras " />
<person posts="2" size="6" who="Dr J Pelan " />
<person posts="2" size="6" who="" />
<person posts="2" size="6" who="&quot;Jason A. Diegmueller&quot; " />
<person posts="2" size="5" who="&quot;Alan Curry&quot; " />
<person posts="2" size="5" who="&quot;Jean-Baptiste Vignaud&quot; " />
<person posts="2" size="5" who="&quot;Magnus N&#228;slund(b)&quot; " />
<person posts="2" size="5" who="Krzysztof Halasa " />
<person posts="2" size="5" who="Harry Brueckner " />
<person posts="2" size="5" who="Bernd Eckenfels " />
<person posts="2" size="5" who="=?iso-8859-1?Q?Gr=E9goire?= FAVRE " />
<person posts="2" size="5" who="Daniel Ryde " />
<person posts="2" size="5" who="Oystein Viggen " />
<person posts="2" size="5" who="Avenger " />
<person posts="2" size="5" who="" />
<person posts="2" size="5" who="Mark Hahn " />
<person posts="2" size="5" who="&quot;Jones D (ISaCS)&quot; " />
<person posts="2" size="5" who="" />
<person posts="2" size="4" who="Dan Hollis " />
<person posts="2" size="4" who="Bob Lorenzini " />
<person posts="2" size="4" who="ywlee " />
<person posts="1" size="40" who="Paul Rusty Russell " />
<person posts="1" size="28" who="Drago Goricanec " />
<person posts="1" size="20" who="Cody Pisto " />
<person posts="1" size="18" who="Mark Hanson " />
<person posts="1" size="16" who="Aaron Tomb " />
<person posts="1" size="15" who="Adam Kumiszcza " />
<person posts="1" size="14" who="" />
<person posts="1" size="12" who="Mark Buda " />
<person posts="1" size="10" who=" (Mark Christiansen)" />
<person posts="1" size="10" who="&quot;Benjamin C.R. LaHaise&quot; " />
<person posts="1" size="10" who="&quot;Olsen, Jim&quot; " />
<person posts="1" size="9" who="Erik Inge Bolso " />
<person posts="1" size="7" who="Jim Duchek " />
<person posts="1" size="7" who="Adam Donnison " />
<person posts="1" size="7" who=" (Dario_Ballabio)" />
<person posts="1" size="7" who="&quot;Roberto Oppedisano&quot; " />
<person posts="1" size="6" who="Martin Sheppard " />
<person posts="1" size="6" who="Darren Nickerson " />
<person posts="1" size="6" who="Oleg Drokin " />
<person posts="1" size="6" who="Peter Samuelson " />
<person posts="1" size="6" who="&quot;Rodel T. Viado&quot; " />
<person posts="1" size="6" who="David Ronis " />
<person posts="1" size="5" who="Ruediger Oertel " />
<person posts="1" size="5" who="&quot;Robert de Bath&quot; " />
<person posts="1" size="5" who=" (H.J. Lu)" />
<person posts="1" size="5" who="&quot;BennyBoy&quot; " />
<person posts="1" size="5" who="Peter Gervai " />
<person posts="1" size="5" who="Catalin BOIE " />
<person posts="1" size="5" who="Julien May " />
<person posts="1" size="5" who="Christopher Horn " />
<person posts="1" size="5" who="&quot;Nathalie Barat&quot; " />
<person posts="1" size="5" who="Alexander Kjeldaas " />
<person posts="1" size="5" who="Rik Faith " />
<person posts="1" size="5" who="&quot;Robert H. de Vries&quot; " />
<person posts="1" size="4" who="Davide Libenzi " />
<person posts="1" size="4" who="&quot;George Sexton&quot; " />
<person posts="1" size="4" who="Jakub Jelinek " />
<person posts="1" size="4" who="Hrafnkell Eiriksson " />
<person posts="1" size="4" who="Steve Lonmo " />
<person posts="1" size="4" who="Graham Murray " />
<person posts="1" size="4" who="Erez Zadok " />
<person posts="1" size="4" who="Andreas Tobler " />
<person posts="1" size="4" who="Joseph Pranevich " />
<person posts="1" size="4" who="&quot;Aaron D. Turner&quot; " />
<person posts="1" size="4" who="BOSZORMENYI Zoltan " />
<person posts="1" size="4" who="NTFlander " />
<person posts="1" size="4" who="" />
<person posts="1" size="4" who="Florian Lohoff " />
<person posts="1" size="4" who="Blu3Viper " />
<person posts="1" size="4" who="Paul Jakma " />
<person posts="1" size="4" who="David R Bacon " />
<person posts="1" size="4" who="&quot;Mike A. Harris&quot; " />
<person posts="1" size="4" who="Paul Gortmaker " />
<person posts="1" size="4" who="Bruno Semrau " />
<person posts="1" size="4" who="Peter Palfrader aka Weasel " />
<person posts="1" size="4" who="Erik Mouw " />
<person posts="1" size="4" who="Jasper Spaans " />
<person posts="1" size="4" who="&quot;Albert D. Cahalan&quot; " />
<person posts="1" size="4" who="&quot;Mr. Arlington Hewes&quot; " />
<person posts="1" size="4" who="Elmer Joandi " />
<person posts="1" size="4" who="Ionut Badulescu " />
<person posts="1" size="4" who="Victor STANESCU " />
<person posts="1" size="4" who="Csabai Csaba " />
<person posts="1" size="4" who="Alon Ziv " />
<person posts="1" size="4" who="Juan Jose Casero " />
<person posts="1" size="4" who="Enrique Vidal " />
<person posts="1" size="4" who="&quot;Francesco Agosti&quot; " />
<person posts="1" size="4" who="mike burrell " />
<person posts="1" size="4" who="Chris Jones " />
<person posts="1" size="4" who=" (Erik Mouw)" />
<person posts="1" size="4" who="Anton Ivanov " />
<person posts="1" size="3" who="Jamie Lokier " />
<person posts="1" size="3" who="&quot;Jonathan A. George&quot; " />
<person posts="1" size="3" who="&quot;Andrew Pounce (UK)&quot; " />
<person posts="1" size="3" who="Gerhard Mack " />
<person posts="1" size="3" who="Tim Walberg " />
<person posts="1" size="3" who="&quot;Ulrich Windl&quot; " />
<person posts="1" size="3" who="&quot;Matthew G. Marsh&quot; " />
<person posts="1" size="3" who="Dave Gilbert " />
<person posts="1" size="3" who="Gerard Roudier " />
<person posts="1" size="3" who="&quot;Carlo E. Prelz&quot; " />
<person posts="1" size="3" who="&quot;Jerry Quinn&quot; " />
<person posts="1" size="3" who="Thomas Bogendoerfer " />
<person posts="1" size="3" who="Thomas Speck " />
<person posts="1" size="3" who="Marc Lehmann " />
<person posts="1" size="3" who="David Dyck " />
<person posts="1" size="3" who="Carlos Costa Portela " />
<person posts="1" size="3" who="Urban Widmark " />
<person posts="1" size="3" who="M.Berglund " />
<person posts="1" size="3" who="Michal Ostrowski " />
<person posts="1" size="3" who="jean-sebastien milliere " />
<person posts="1" size="3" who="The Lost Wizard " />
<person posts="1" size="3" who="John Goebel " />
<person posts="1" size="3" who="Michael Meissner " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="&quot;T.A. dos Santos&quot; " />
<person posts="1" size="3" who="Frank Sweetser " />
<person posts="1" size="3" who="Hubert Tonneau " />
<person posts="1" size="3" who="Benjamin Scott " />
<person posts="1" size="3" who="&quot;Glenn McGrath&quot; " />
<person posts="1" size="3" who="Ken Witherow " />
<person posts="1" size="3" who="Magnus Stenman " />
<person posts="1" size="3" who="Stephen Satchell " />
<person posts="1" size="3" who="Alex Nicolaou " />
<person posts="1" size="3" who="Marek Zelem " />
<person posts="1" size="3" who="&quot;Wichert, Gerhard&quot; " />
<person posts="1" size="3" who="Alex Butcher " />
<person posts="1" size="3" who="J&#246;rg Pleumann " />
<person posts="1" size="3" who="Artur Frysiak " />
<person posts="1" size="3" who="&quot;Lane, Richard M&quot; " />
<person posts="1" size="3" who="Morten Rolland " />
<person posts="1" size="3" who="Savochkin Andrey Vladimirovich " />
<person posts="1" size="3" who="&quot;ngroups&quot; " />
<person posts="1" size="3" who="&quot;Steven A. DuChene at VA Linux Systems&quot; " />
<person posts="1" size="3" who=" (WOL - Odinn Sorensen)" />
<person posts="1" size="3" who="Martin Andersen " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Timothy Writer " />
<person posts="1" size="3" who="Ilan Bloch " />
<person posts="1" size="3" who="Rogerio Brito " />
<person posts="1" size="3" who="Robbert Muller " />
<person posts="1" size="3" who="Daniel Robert Franklin " />
<person posts="1" size="3" who="Bret Indrelee " />
<person posts="1" size="3" who="Clifford Wolf " />
<person posts="1" size="3" who="Aron Griffis " />
<person posts="1" size="3" who="Richard Maier " />
<person posts="1" size="3" who="Brian Kidder " />
<person posts="1" size="3" who="Shaw Terwilliger " />
<person posts="1" size="3" who="&quot;Tim (Pass the Prozac) Sailer&quot; " />
<person posts="1" size="3" who="Khimenko Victor " />
<person posts="1" size="3" who="Mike Frisch " />
<person posts="1" size="3" who="Petru Paler " />
<person posts="1" size="3" who="Tim Strobell aka Griffy " />
<person posts="1" size="3" who="" />
<person posts="1" size="3" who="Brian Pomerantz " />
<person posts="1" size="3" who="Michal Vitecek " />
<person posts="1" size="3" who="Steve Wormley " />
<person posts="1" size="3" who="&quot;Eric Dumazet&quot; " />
<person posts="1" size="3" who="Vojtech Pavlik " />
<person posts="1" size="3" who="Matti Aarnio " />
<person posts="1" size="3" who="Raphael Bossek " />
<person posts="1" size="3" who="Cort Dougan " />
<person posts="1" size="3" who="Benjamin Close " />
<person posts="1" size="3" who="Mike Jagdis " />
<person posts="1" size="3" who="&quot;Henning P. Schmiedehausen&quot; " />
<person posts="1" size="3" who="Craig Milo Rogers " />
<person posts="1" size="3" who="Joel Klecker " />
<person posts="1" size="3" who="&quot;Nietzel, Earle R&quot; " />
<person posts="1" size="3" who="&quot;Leiden, Soren&quot; " />
<person posts="1" size="3" who="Kris Karas " />
<person posts="1" size="3" who="Christopher Thompson " />
<person posts="1" size="3" who="Junio Hamano " />
<person posts="1" size="3" who="Florian Heinz " />
<person posts="1" size="3" who="Orin Eman " />
<person posts="1" size="3" who="Mitchell Blank Jr " />
<person posts="1" size="3" who="Pete Harlan " />
<person posts="1" size="3" who="Dax Kelson " />
<person posts="1" size="3" who="Jonathan Walther " />
<person posts="1" size="2" who="---daniele--- " />
<person posts="1" size="2" who="Todd Roy " />
<person posts="1" size="2" who="Herbert Xu " />
<person posts="1" size="2" who="ma " />
<person posts="1" size="2" who="&quot;Sachin Tilloo&quot; " />
<person posts="1" size="2" who="&quot;Nicolas Lescastreyres&quot; " />
<person posts="1" size="2" who="&quot;Joe Kellner&quot; " />
<person posts="1" size="2" who=" (Jim Gettys)" />
<person posts="1" size="2" who="Sushil Agrawal " />
<person posts="1" size="2" who="Jesse Pollard " />
<person posts="1" size="2" who="Horst von Brand " />
<person posts="1" size="2" who="Dieter N&#252;tzel " />
<person posts="1" size="2" who="&quot;Vitezslav Samel&quot; " />
<person posts="1" size="2" who="Jose Miguel Pereira Tavares " />
<person posts="1" size="2" who="Al White " />
<person posts="1" size="2" who="&quot;Bruce Werner&quot; " />
<person posts="1" size="2" who="Erico Freitas " />
<person posts="1" size="2" who="&quot;Forever shall I be.&quot; " />
<person posts="1" size="2" who="Chris Smith " />
<person posts="1" size="2" who="Arie Rudich " />
<person posts="1" size="2" who="Miquel van Smoorenburg " />
<person posts="1" size="2" who="&quot;van Heusden, Folkert&quot; " />
<person posts="1" size="2" who="&quot;B. James Phillippe&quot; " />
<person posts="1" size="2" who="kees " />
<person posts="1" size="2" who="Martin Tessun " />
<person posts="1" size="2" who="Chris Wedgwood " />
<person posts="1" size="2" who="&quot;Gregory P Whalin&quot; " />
<person posts="1" size="2" who="Dieter =?iso-8859-1?Q?N=FCtzel?= " />
<person posts="1" size="2" who="&quot;Sandip K. Shah&quot; " />
<person posts="1" size="2" who="&quot;Michael J. Rensing&quot; " />
<person posts="1" size="2" who="Pascal Schmitt " />
<person posts="1" size="2" who="Douglas Gilbert " />
<person posts="1" size="2" who="Curtis Regentin " />
<person posts="1" size="2" who="&quot;Leslie F. Donaldson&quot; " />
<person posts="1" size="2" who="Philip Blundell " />
<person posts="1" size="2" who="Adam Kumiszcza " />
<person posts="1" size="2" who="Gabor Lenart " />
<person posts="1" size="2" who="Alex Buell " />
<person posts="1" size="2" who="Kendall Lister " />
<person posts="1" size="2" who="Werner Almesberger " />
<person posts="1" size="2" who="Borislav Deianov " />
<person posts="1" size="2" who="Anton Blanchard " />
<person posts="1" size="2" who="Michal Jaegermann " />
<person posts="1" size="2" who="Jeff DeFouw " />
<person posts="1" size="2" who="Gr&#233;goire FAVRE " />
<person posts="1" size="2" who="Mathias Wiklander " />
<person posts="1" size="2" who="Mathias Wiklander " />
<person posts="1" size="2" who="Lawrence MacIntyre " />
<person posts="1" size="2" who="Stephen Williams " />
<person posts="1" size="2" who="Juan Carlos Castro y Castro " />
<person posts="1" size="2" who="Lorenzo Allegrucci " />
<person posts="1" size="2" who="Dag Wieers " />
<person posts="1" size="2" who="&quot;Thorsten Pastoors (SA -02.00)&quot; " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Walter Hofmann " />
<person posts="1" size="2" who="Sven Koch " />
<person posts="1" size="2" who="Petko Manolov " />
<person posts="1" size="2" who="&quot;Admin&quot; " />
<person posts="1" size="2" who="Drew Bernat " />
<person posts="1" size="2" who="&quot;Manfred&quot; " />
<person posts="1" size="2" who="Jes Sorensen " />
<person posts="1" size="2" who="&quot;Dunlap, Randy&quot; " />
<person posts="1" size="2" who="Harald Milz " />
<person posts="1" size="2" who=" (Miquel van Smoorenburg)" />
<person posts="1" size="2" who="Jussi Hamalainen " />
<person posts="1" size="2" who="Brent Verner " />
<person posts="1" size="2" who="tom " />
<person posts="1" size="2" who="Matjaz Godec " />
<person posts="1" size="2" who="Peter Hanecak " />
<person posts="1" size="2" who=" (Hans-Joachim Baader)" />
<person posts="1" size="2" who="Jingke Li " />
<person posts="1" size="2" who="Trond Hasle Amundsen " />
<person posts="1" size="2" who="&quot;Daniel V. Engovatov&quot; " />
<person posts="1" size="2" who="Bernhard Rosenkraenzer " />
<person posts="1" size="2" who="&quot;Thomas S. Iversen&quot; " />
<person posts="1" size="2" who="Ming Lei " />
<person posts="1" size="2" who="Stanislav Krasilovskiy " />
<person posts="1" size="2" who="Zach Brown " />
<person posts="1" size="2" who="Ivan Kokshaysky " />
<person posts="1" size="2" who="Tuan Hoang " />
<person posts="1" size="2" who="John McInnes " />
<person posts="1" size="2" who="&quot;Davide Libenzi&quot; " />
<person posts="1" size="2" who="Juan J Casero " />
<person posts="1" size="2" who="Oscar Barlow " />
<person posts="1" size="2" who="Edmund GRIMLEY EVANS " />
<person posts="1" size="2" who="CHANDRIKA H V " />
<person posts="1" size="2" who="Angelo Masci " />
<person posts="1" size="2" who="Osman Elliyasa " />
<person posts="1" size="2" who="&quot;Jayson Nordwick&quot; " />
<person posts="1" size="2" who="Jack liu " />
<person posts="1" size="2" who="Yenoham Nadnerb " />
<person posts="1" size="2" who="BOSZORMENYI Zoltan " />
<person posts="1" size="2" who="&quot;Alex&quot; " />
<person posts="1" size="2" who="David Hinds " />
<person posts="1" size="2" who="&quot;Marco Bano&quot; " />
<person posts="1" size="2" who="" />
<person posts="1" size="2" who="Virginie Galtier " />
<person posts="1" size="2" who="Pavel Machek " />
<person posts="1" size="2" who=" (&quot;B.Y.&quot;)" />
<person posts="1" size="2" who="rewt " />
<person posts="1" size="2" who="Uwe Schmeling " />
<person posts="1" size="2" who="Stephane Morand " />
<person posts="1" size="2" who="Linux Lists " />
<person posts="1" size="2" who="jeremy brand " />
<person posts="1" size="2" who="" />
<person posts="1" size="1" who="" />

</stats>

<section
  title="Serial Driver Update; Some Confusion"
  subject="PATCH: Update for the serial driver."
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9908_05/msg00366.html"
  posts="33"
  startdate="31 Aug 1999 00:00:00 -0800"
  enddate="09 Sep 1999 00:00:00 -0800"
>
<topic>PCI</topic>

<mention>Stuart MacDonald</mention>

<p>Theodore Y. Ts'o posted a patch and said to Linus Torvalds:</p>

<quote who="Theodore Y. Ts'o">

<p>Enclosed please find
updates to the serial driver versus Linux 2.3.15. This driver adds support
for PCI serial boards, and the following new UART's: Oxford Semiconductor
16C950, the StarTech 16854, and the StarTech 16654.</p>

<p>I've coordinated various PCI patches from Otto Moerbeck, Henning
Schmiedehausen, Stuart MacDonald (from Connect Tech) and others, and the
merged driver has been tested by a number of folks before I've submitted it
to you. I therefore expect it to be BugFree(tm), although some further
updates to support additional PCI serial boards may be coming in the next
couple of weeks.</p>

</quote>

<p>Rogier Wolff replied, <quote who="Rogier Wolff">I've
reviewed your patch, and "ported" it to fit into linux-2.2.x. Was it your
intention to get the patches into 2.2.x? It sure looks as if it was
"designed" with that in mind. Or do you want it to get some testing in 2.3.x
first?</quote> Six days later Ted replied (he'd been travelling around the
world for various events like the Linux Kongress and the Storage and
Filesystem Workshop), <quote who="Theodore Y. Ts'o">Yes, the serial driver was designed to work for both Linux
2.3 and Linux 2.2. I ship the serial driver in a stand-alone package where
you can compile it as a module separately from the kernel tree, and that was
the original way that I had assumed people with 2.2 kernels could use the
new serial driver. But yes, it can be put into the 2.2 kernel without much
difficulty.</quote></p>

<p>Rogier actually replied four times to Ted's initial post (and was the only
person to reply, though others participated in the subsequent discussion).
In the reply that led to the main thread, he noticed that Ted's patch
included a "static int tty_get_baud_rate(struct tty_struct *tty)" function,
and begged, <quote who="Rogier Wolff">Could you
PLEASE, make that a published, exported function? That would be really nice.
Nowadays every serial driver does this for himself.</quote> Ted replied that
it had been a published, exported function since kernel version 2.1.66,
adding, <quote who="Theodore Y. Ts'o">the code which
you're quoting from the serial driver is compatibility code which is under a
"#if (LINUX_VERSION_CODE &lt; 131394)". Each serial driver should
*not* be doing itself, but should be using tty_get_baud_rate() (defined
in drivers/char/tty_io.c) instead.  It's even published in /proc/ksyms so
that modular drivers can use it.</quote></p>

<p>Rogier was a little embarrassed, and went on to submit PCI IDs for the
OXFORD Semiconductor and OX16PCI954 cards. He also suggested, <quote
who="Rogier Wolff">May I ask for a "name" field in your PCI-table? Then we
can say something like "Detected an xxxx card". That make supporting such a
card a lot easier: People get reassured that their card got
detected.</quote></p>

<p>Ted replied, <quote who="Theodore Y. Ts'o">The reason
why I haven't done this is because I don't want to bloat the kernel with
overly large tables; if past history is any guide, I have no doubt that the
number of PCI serial boards will be *large*.</quote> A discussion started,
but Linus broke in with:</p>

<quote who="Linus Torvalds">

<p>Has anybody bothered to check the
current PCI code?</p>

<p>"struct pci_dev" contains the name of the PCI device ("dev-&gt;name",
surprise, surprise), and it has been copied there from __initdata
information that is discarded after bootup so that we don't waste run-time
memory on keeping all the PCI names around when they aren't needed (ie only
the devices that were found have the name).</p>

<p>"oldproc" is gone - because the name is there, and it's there to stay.
Exactly because there are so many cases where it's just nice to have the
information available (/proc/iomem, device driver diagnostic messages
etc).</p>

</quote>

<p>Rogier asked for a brown paper bag, and there followed a bit of discussion
on modules and other kernel implementation details.</p>

</section>

<section
  title="bigmem Patch Conflicts With rawio Patch"
  subject="CONFIG_BIGMEM and rawio"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00211.html"
  posts="42"
  startdate="02 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>Big Memory Support</topic>
<topic>Framebuffer</topic>
<topic>Raw IO</topic>

<mention>Manfred Spraul</mention>

<p>Manfred Spraul noticed that the bigmem and rawio patches seemed to be
incompatible, and Andrea Arcangeli explained:</p>

<quote who="Andrea Arcangeli">

<p>The thing is not black
and white. It can be compatible or incompatible, it only depends about the
internal details of the blockdevice driver and on which memory you are going
to do raw-io. It only depends on the source and on the destination of the
raw-IO. If both the source and the destination are OK, then you can do
raw-io fine also with BIGMEM enabled. The current code is just completly
stable, you can't harm the kernel trying to do raw-io on the wrong place. If
the source and the destination are not compatible, then you'll get an -EIO
from read(2) or write(2).</p>

<p>For example if you know for sure that the blockdevice where you want to
write in raw-io mode does DMA driven I/O, then you can just now do raw-io
from or to bigmemory _fine_ on _such_ blockdevice using 2.3.16. The only
thing you have to do to experiment this, is to comment out these lines in
buffer.c of 2.3.16:</p>

<pre>                        if (map &amp;&amp; PageBIGMEM(map)) {
                                err = -EIO;
                                goto error;
                        }</pre>

<p>then you'll be able to do raw-io everywhere as you can do with bigmem
disabled.</p>

<p>WARNING: after removing the above lines you must make sure to not do raw-io
from or to bigmemory with blockdevices that are _not_ using DMA or you'll
get in troubles. So if you are unsure don't remove such lines, _never_.</p>

<p>And you can _safely_ use raw-io in a _stock_ 2.3.16 with bigmem enabled too;
you won't risk to crash the kernel but you'll get a graceful -EIO in the
_worst_ case. You can get -EIO only trying to do raw-io on _shm_ (as
big-databases) or _anonymous_ userspace memory. If you want to do raw-io
from/to framebuffer memory, that will work just fine also with bigmem
enabled.</p>

</quote>

<p>Manfred had also asked if there were plans to change the situation, and
Andrea explained:</p>

<quote who="Andrea Arcangeli">

<p>Right now the above
check is obviously right and safe but it's strict. Maybe it worth to add a
per-blockdevice bitflag to allow raw-io on bigmem pages with devices that
uses DMA (such devices won't need any internal change at all to work with
bigmem pages, since with DMA only userspace and the hardware device (and not
the kernel) will touch the bigmem memory). BTW, with such per-blockdevice
bitflag we could do also swapin/swapout on DMA devices more efficiently when
possible (the swapout thing is really not interesting though).</p>

<p>NOTE: the above is what IMO is _doable_ but that doesn't mean it worth to do
that. I would like to get some more comment about this raw-io/bigmem
issue.</p>

</quote>

<p>Stephen C. Tweedie replied, <quote who="Stephen C. Tweedie">Unfortunately an application has no control over allocation
of its pages, so this basically makes raw IO useless right now with
BIGMEM,</quote> and there followed a big implementation discussion.</p>

</section>

<section
  title="RAID And NFS Trouble Going Into The Main Tree"
  subject="I vote for updated RAID and KNFSD"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00265.html"
  posts="54"
  startdate="02 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>
<topic>Code Freeze</topic>
<topic>Disk Arrays: RAID</topic>
<topic>FS: NFS</topic>
<topic>Feature Freeze</topic>
<topic>Networking</topic>

<mention>Stephen Frost</mention>
<mention>David Woodhouse</mention>
<mention>David Weinehall</mention>
<mention>Jeff Garzik</mention>
<mention>Linus Torvalds</mention>
<mention>David Mansfield</mention>

<p>David Mansfield had been hand-patching knfsd and RAID (and DAC960 before it
was merged) for months, and felt that if the patches were only being kept
out of the Linus Torvalds tree because they would require upgrading tools,
then that shouldn't be an objection, and the patches should definitely go
in. Khimenko Victor agreed, so long as the old tools would do no harm to
systems using later kernels. Daniel V. Engovatov also agreed, pointing out
that NFS problems in the Linus tree were getting very annoying. Stephen
Frost also agreed, as did Timothy Writer, Jeff Garzik, David Woodhouse,
Robbert Muller, Gregory P Whalin, and David Weinehall.</p>

<p>Ingo Molnar said he'd already ported the RAID code to 2.3 and would release
it shortly (and added that any further delay should be blamed solely on
him), which got a big round of applause.</p>

<p>M Carling agreed in part, but noticed some ambiguity in the discussion:</p>

<quote who="M Carling">

<p>This is an amazing thread. A
dozen posts and no one has indicated whether they are talking about updating
2.2 or 2.3. It seems like to many developers, even numbered kernels are
developmental and odd numbered kernels are experimental. There is scant
evidence on this list that anyone sees a need for a kernel that is stable in
anything but name.</p>

<p>The new RAID code breaks existing configurations. Such changes are sometimes
needed. However, they should never be put directly into a stable kernel.
Deliberately breaking production systems with a kernel upgrade _within_ a
"stable" kernel series is unconscionable.</p>

<p>Now that companies are beginning to run Linux on production systems, the
carefree attitude toward "stable" kernels has to change. I'd love to be able
to recommend Linux to my clients on Wall Street, but there have to be stable
kernels first. That means nothing changes unless it's a bug fix. Everything
else (updated drivers, new features, code cleanups) waits for the next major
release. Otherwise, there is little difference between odd and even numbered
kernels.</p>

<p>I hope the updates are ready in time to make it into 2.3, but I think Linus
has already left the feature freeze too late to have a stable 2.4 this
year.</p>

</quote>

<p>It turned out that a lot of people <em>had</em> been talking about 2.2, and
there followed a big discussion about the benefits and dangers of adding
features to the stable series. Some folks like M Carling, felt that the
stable series should only receive bug fixes, and stop backporting code
updates or new features as they have been. Others pointed out that, at least
in the case of NFS, the code in the stable series was actually broken, and
the available patches included many bug fixes.</p>

<p>At some point, Ingo said, <quote who="Ingo Molnar">the RAID code has too much generic impact to be included
into 2.2 - it modifies the buffer-cache layer. Furthermore, it breaks the MD
API (intentionally), which breaks old utilities. It's clearly too late to be
included in 2.2, and thats the end of the story. This is mainly a problem
for me only anyway, because i have to maintain the patches separately. 2.3
is a different issue, but there is still some stuff to be cleaned up before
the merge is ready - i'm working on it.</quote></p>

<p>Elsewhere in the course of discussion, Rogier Wolff pointed out, <quote who="Rogier Wolff">Talking about confusing: Some people
(rightly, I think) feel that within a stable release, you shouldn't be
required to upgrade userland tools. A system installed with 2.2.0 should be
seamlessly upgradeable to 2.2.12. Everyone knows that when you go from 2.0.x
to 2.2.x, you might (and as it happens, WILL) have to upgrade a few userland
packages, but within a stable kernel release, an upgrade shouldn't lead to
an avalange of user-space-program upgrades.</quote></p>

<p>Elsewhere, Bill Rugolsky Jr. said:</p>

<quote who="Bill Rugolsky Jr.">

<p>there are some
standard kernel features, e.g., ISDN, RAID, NFS, that have at times fallen
into disrepair, because nobody was actively developing/maintaining them, or
development was occurring off this list and not syncing up in a timely
manner. This was true of at least ISDN and NFS in the 2.1.x series.</p>

<p>Linus has insisted that large subsystem patches be accompanied by a
subsystem maintainer. I don't blame him; this is as it should be, because
the alternatives are not sustainable. The short-term effect, however, has
been to cause serious users of these features, as well as several
distributions, to use "non-standard patches" against stable kernels. It
behooves us to ensure that all features have maintainers, and preferably
several people who have a thorough understanding of the code. It also
behooves us to test development kernels widely, before the code freezes are
announced.</p>

</quote>

<p>Elsewhere, Stefan Monnier said, <quote who="Stefan Monnier">The key point is whether or not something slows down
development and whether or not it slows down adoption. The new raid code has
not been backported from 2.3, so it's not time wasted. Same thing for knfsd.
What reason could there be not to use the newer raid or the newer knfsd ?
None. Very simply none. Every serious NFS user uses the patched knfsd, and
every serious raid user uses the new raid code. Even distribution
increasingly include the newer knfsd patches and the newer raid code, which
shows clearly that the problem is not stability or acceptance.</quote></p>

<p>Elsewhere, Mike Galbraith said, <quote who="Mike Galbraith">I think that this thread should die now. The decision of
what to do and when to do it is in the right hands. In the meantime, we all
know how to 'use the source Luke' right? (of course we do.. otherwise we
wouldn't be jabbering away on a development list)</quote></p>

</section>

<section
  title="IKD In The Kernel"
  subject="v2.3.17pre1 - Patches, Complaints, Questions and Jubilations"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00586.html"
  posts="22"
  startdate="04 Sep 1999 00:00:00 -0800"
  enddate="09 Sep 1999 00:00:00 -0800"
>
<topic>SMP</topic>

<p>In the course of discussion, Andrea Arcangeli said, <quote who="Andrea
Arcangeli">IKD will never be merged because impact lots of common code. I
want to be sure to only fix (and not add 8) bugs with IKD.</quote> David
Weinehall asked, <quote who="David Weinehall">Are there ANY parts of IKD
that are worth to merge, that don't disrupt the main code-paths when not
compiled in?</quote> Linus Torvalds replied:</p>

<quote who="Linus Torvalds">

<p>The SMP automatic deadlock
detection parts of the IKD are extremely simple, impact none of the mainline
code, and are occasionally very useful.</p>

<p>I've certainly considered integrating those, although if I do (or preferably
if somebody else does ;) I suspect I'd be happier just leaving them on all
the time rather than making them a config option - they are _that_
non-intrusive.</p>

</quote>

<p>Andrea replied:</p>

<quote who="Andrea Arcangeli">

<p>There are many kind of
automatic deadlock detection in the ikd patch. I believe you are talking
about the IO-APIC-NMI_WATCHDOG from Ingo, since it's the only one that may
run on a serious production envinroment as a default thing.</p>

<p>But the NMI patch has a performance-downside too: the timer irq will be
driven from the 8259 and not from the apic chip (the io-apic will instead
run an NMI irq for the same hardware-event), and that means all timer irq
handlers will be run on the first CPU and so the kernel will scale worse
(the other CPU may be idle at the same time).</p>

<p>So if you want it into the stock kernel I am fine with it, but I believe
it's not a good idea to make it a default thing.</p>

</quote>

<p>Linus confirmed that he <em>had</em> been talking about Ingo's work, adding,
<quote who="Linus Torvalds">The semaphore and spinlock
"deadlock" detectors that depend on timeouts or on a maximum number of
spinlock iterations are definitely not acceptable on any kind of production
machine.</quote> To Andrea's objection, he replied, <quote who="Linus Torvalds">Good point. Never mind.</quote></p>

</section>

<section
  title="Bug With Resource Limits"
  subject="resource limits bug"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00663.html"
  posts="8"
  startdate="05 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>

<p>Raymond Nijssen noticed that 2.2.5 let non-privileged users increase
resource limits beyond their maximum values and even beyond the kernel
maximums. 2.0.35 resource limits also seemed broken. He posted some code to
illustrate this. As an aside, he asked, <quote who="Raymond Nijssen">why are
most "unlimited" kernel limits set to 2G (that is, LONG_MAX in
include/asm-*/resource.h) while 3G or so would be more correct?</quote> Alan
Cox replied, <quote who="Alan Cox">Because the ulimit values are signed.
2.2.12 has most of the checks fixed, 2.3.x someone needs to shift to using
an unsigned rlimit_t.</quote> Matthew Wilcox posted a patch to fix this,
saying he'd posted it a few days previously, but included it again now in
case Alan had missed it (elsewhere saying that glibc also needed to address
the problem). He added, <quote who="Matthew Wilcox">Incidentally, I spotted
this problem by using the -W flag. It's a shame that some of the warnings
this generates can't be worked around; we can't make the header files clean.
(in particular, the test against zero always being false is something we
don't want warned about in the signal.h file. I tried a couple of things to
eliminate that warning, but I can't see a way.)</quote></p>

</section>

<section
  title="Console Code Rewrites Break Sparc On 2.2.x"
  subject="low-latency-patch"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00678.html"
  posts="3"
  startdate="05 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>SMP</topic>

<mention>Robert Dinse</mention>

<p>Robert Dinse applied the low latency patch to a 2.2.10 kernel, to compile on
a Sparc SMP system, and got errors. Ingo Molnar replied, <quote who="Ingo
Molnar">i rewote some of the console code, and have
not covered fbcon. On Sparc you dont need those console changes anyway, so
just reverse all drivers/char changes and the changes to
linux/console_struct.h, linux/selection.h, linux/vt_buffer.h. That should be
compilable - i hope.</quote></p>

</section>

<section
  title="DMA Memory Allocation"
  subject="Problem allocating DMA memory"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00787.html"
  posts="12"
  startdate="05 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>

<mention>H.J. Lu</mention>
<mention>Jamie Lokier</mention>
<mention>Benjamin C.R. LaHaise</mention>
<mention>Richard Gooch</mention>

<p>Richard Gooch found that kmalloc() in 2.3.16 would occassionally fail when
allocating memory with 1G ram. Setting mem=512 seemed to solve the problem.
Victor Khimenko replied, <quote who="Victor Khimenko">Hmm. Am I missed
announce about fix for few-years old DMA problem or what ? Allocation DMA
memory can fail even on 64MiB system (I seen it) and in theory even on 17MiB
system :-(( There are was some ideas about fixing/workarounding it (mostly
from Rik van Riel but some can be found on www.alsa-project.com) but AFAIK
noone suggested idea sane enough to pass Linus test yet...</quote> Alan Cox
said, <quote who="Alan Cox">2.2.11/2.2.12 have a zoned allocator which seems
to help massively</quote> and Rik replied, <quote who="Rik van Riel">Nice
and simple, I like it (and have overlooked it until now
:(). I think we should implement something at least this good in 2.3, maybe
even with cache colouring...</quote> Alan explained, <quote who="Alan
Cox">Its simple, elegant but does need optimising.
If you have little ram left but DMA ram your page allocation rate is
noticably slower. On a 20Mb box thats not ideal.</quote> There was a brief
implementation discussion (and some patches) also including H.J. Lu,
Benjamin C.R. LaHaise, and Jamie Lokier.</p>

</section>

<section
  title="Detecting WinModems"
  subject="driver for 3COM USR PCI v.90 modem?"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00845.html"
  posts="17"
  startdate="06 Sep 1999 00:00:00 -0800"
  enddate="10 Sep 1999 00:00:00 -0800"
>
<topic>Modems</topic>
<topic>PCI</topic>

<p>In the course of discussion, Victor Khimenko described how to tell if a PCI
modem is a WinModem or not. He said, <quote who="Victor Khimenko">You just need to take a look on Windows driver. If there are
HUGE .vxd (or .386) file then it's winmodem for sure. If not, then may be
it's not a winmodem.</quote></p>

</section>

<section
  title="Frame Relay, HDLC And RISCom/N2 Card Drivers"
  subject="Frame Relay, HDLC and RISCom/N2 card drivers"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00881.html"
  posts="3"
  startdate="06 Sep 1999 00:00:00 -0800"
  enddate="07 Sep 1999 00:00:00 -0800"
>
<topic>Networking</topic>
<topic>SMP</topic>

<p>Krzysztof Halasa announced:</p>

<quote who="Krzysztof Halasa">

<p>I've uploaded my
drivers for RISCom/N2 HDLC card (ISA bus) to <a
href="ftp://ftp.pm.waw.pl/pub/Linux/hdlc/hdlc-1.0-pre1.tar.gz">ftp://ftp.pm.waw.pl/pub/Linux/hdlc/hdlc-1.0-pre1.tar.gz</a>.
This archive includes generic HDLC support routines (currently only DTE/DCE
Frame Relay with ANSI or CCITT LMI is available, not counting IP-in-HDLC
"raw" mode). I'll work on integrating this support with the one provided by
syncppp.c and by other Linux ppp implementations.</p>

<p>The N2 hardware driver should work with SDL RISCom/N2 single or dual port
cards, and will not work with integrated CSU/DSU/DDS. There is no SMP nor
non-Intel support yet (is it even possible to use this card in non-Intel
machine?).</p>

</quote>

</section>

<section
  title="BFS Filesystem Driver Available for Linux"
  subject="[NEW] BFS for Linux"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00929.html"
  posts="3"
  startdate="07 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>

<p>Andries Brouwer announced a driver for the BFS filesystem from a SCO
Unixware 7 system. He said:</p>

<quote who="Andries Brouwer">

<p>I wrote something and it works for me. Find it in <a
href="ftp://ftp.cwi.nl/pub/aeb/bfsmod.c">ftp://ftp.cwi.nl/pub/aeb/bfsmod.c</a>
or in <a
href="ftp://ftp.us.kernel.org/pub/linux/kernel/people/aeb/">ftp://ftp.XX.kernel.org/pub/linux/kernel/people/aeb/</a></p>

<p>Note that this was written without specs of the fs and with only one
specimen of such a fs at hand. If anybody has more information about the
structure of the superblock or inodes, I'd like to hear.</p>

<p>By the way, this is read-only only. Making it read-write would be an easy
exercise.</p>

</quote>

</section>

<section
  title="pppd Upgrade Required In Recent Kernels"
  subject="ppp &amp; 2.3.16"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00937.html"
  posts="2"
  startdate="06 Sep 1999 00:00:00 -0800"
  enddate="07 Sep 1999 00:00:00 -0800"
>
<topic>Networking</topic>

<p>Oscar Barlow reported that after upgrading from 2.3.6 to 2.3.16, PPP
complained about finding no driver in the kernel, even though he knew he
compiled it in. Jean-Baptiste Vignaud said that the PPP driver had changed
since 2.3.1x, and that Oscar should upgrade pppd to version 2.3.9; he also
suggested upgrading the KDE dialer, which otherwise might give similar
errors. EOT.</p>

</section>

<section
  title="Sparc32 Not Fully Ported To New MM Architecture"
  subject="2.3.16 on Sparc 32bit hardware..."
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00967.html"
  posts="3"
  startdate="07 Sep 1999 00:00:00 -0800"
  enddate="07 Sep 1999 00:00:00 -0800"
>

<mention>Robert Dinse</mention>
<mention>David S. Miller</mention>

<p>Robert Dinse got compiler errors on his Sparc, and David S. Miller replied
that Sparc32 was still being ported to the new MM architecture of 2.3.x;
Robert asked if an announcement would be made when it was ready, but there
was no reply.</p>

</section>

<section
  title="CLONE_PID Problems"
  subject="clone() and CLONE_PID"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg00998.html"
  posts="11"
  startdate="07 Sep 1999 00:00:00 -0800"
  enddate="13 Sep 1999 00:00:00 -0800"
>

<p>In the course of discussion, Alan Cox pointed out, <quote who="Alan
Cox">CLONE_PID causes enough potential security hazards it is going away in
2.2.13 and some point in 2.3.x. It was never intended to be user accessible
its a hack for the boot up code</quote></p>

</section>

<section
  title="'Linux Device List' Format Change"
  subject="Would anyone miss devices.tex?"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg01017.html"
  posts="4"
  startdate="07 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>

<p>H. Peter Anvin announced:</p>

<quote who="H. Peter Anvin">

<p>It's pretty much
painfully obvious that I'm way behind in editing the Linux Device List,
although I *have* processed registrations. However, a major reason for this
delay is that way back when I got convinced to maintain both a text and a
TeX version of this file, which has meant double work for everything.</p>

<p>This doesn't scale very well, and besides, I really would like to have
something output HTML as well. Therefore, unless I hear *loud* protests in
the next few days, I'm planning on killing off devices.tex until I have
found (and had time to convert to) a decent single-source format.</p>

</quote>

<p>There were no objections, and some folks suggested SGML as a good
single-source format.</p>

</section>

<section
  title="Config Menu Reorganization"
  subject="config-menus"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_01/msg01056.html"
  posts="13"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="09 Sep 1999 00:00:00 -0800"
>

<p>David Weinehall announced that he was rewriting all the config menus for all
platforms, to make them more uniform. His patches would be against 2.3.x.
Some folks were happy about this, and it was pointed out that the menus had
started getting out of hand and needed this kind of cleanup. There followed
a discussion of various organizational possibilities.</p>

<p>Under the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00144.html">Clean
up of the config-options</a>, David posted a <a
href="http://www.acc.umu.se/~mcalinux/">URL to his patch</a>, adding,
<quote who="David Weinehall">I had to make a naughty
hack to get the changes in fs/partitions/Config.in to work properly with
xconfig, but apart from this, everything should be nice, neat and friendly.
I've made changes in Documentation/Configure.help to reflect my
changes.</quote></p>

</section>

<section
  title="Winmodem Status Report"
  subject="PCI device 12b9:1006/12b9:0060 = 3COM USR PCI V90 = winmodem."
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00007.html"
  posts="2"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>Modems</topic>

<p>In the course of discussion, Jeff Garzik gave pointers to <a
href="http://www.close.u-net.com/">Richard's Home Page</a> and the <a
href="http://linmodems.org/">Linux Winmodem Support</a> page and summed up
this news, <quote who="Jeff Garzik">The Lucent
winmodem driver is being reverse engineered, and they have made a lot of
progress already: It can dial and detect the remote modem's answer tones.
Code is available at the first URL above. Also, PCTel has announced that a
Linux driver for their [DPS-less] winmodems went out to OEMs... though I
have not seen anyone mention seeing or obtaining such a driver yet.</quote></p>

</section>

<section
  title="IPv6 As A Module"
  subject="IPv6 as a module?"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00110.html"
  posts="2"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>Networking</topic>

<mention>David Weinehall</mention>

<p>David Weinehall asked if IPv6 could be used as a module (net/Config.in
claimed not, but the option was still allowed during 'make config'). Matti
Aarnio gave a pointer to an <a
href="ftp://mea.tmt.tele.fi/linux/mea-21131ac4-ipv4mod.diff.3">old patch</a>
and replied, <quote who="Matti Aarnio">It is a
module, as long as you never unload it.. In 2.3.* series it is module, but
the module itself contains code which makes sure that non-hackers won't
unload it accidentally. (But allows smaller initial kernel image size). I
think I did at least once fix it so that it *can* be unloaded, but I have
been way too busy to bring that to current level..</quote></p>

</section>

<section
  title="PPP Over Ethernet"
  subject="Kernel Support For PPP over Ethernet"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00115.html"
  posts="1"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>Networking</topic>

<p>This was last discussed in <kcref subject="PPPoE?"
startdate="24 Aug 1999 00:00:00 -0800"></kcref>. This time, Michal Ostrowski gave a pointer
to <a href="http://www.math.uwaterloo.ca/~mostrows/pppoe.tgz">some code and
docs</a> and announced:</p>

<quote who="Michal Ostrowski">

<p>I've created several
patches which add support for PPP over Ethernet (RFC 2516) to the Linux
kernel. These patches require kernel 2.3.17 and ppp 2.3.9 since they make
use of the new ppp channels facilities in the kernel.</p>

<p>In writing this code , I came across some problems  which are probably
worthwhile mentioning here:</p>

<p>In ppp-generic.c , the code makes an assumption that the header length that
will be used will always match the length of the PPP header (PPP_HDRLEN).
The problem with this is that the higher level network layers account for
"dev-&gt;hard_header_len" space when allocating and reserving space in the
skb's that they create. When the PPP network layer passes down an skb to the
PPPoE layer, there's no room in the skb to tack on an ethernet and PPPoE
header at the front (and I don't want to have to make a copy of the skb in
order to make space).</p>

<p>The proper way of solving this is to have the PPP network layer not assume
that the header length is PPP_HDRLEN (that is replace references to
PPP_HDRLEN with "dev-&gt;hard_header_len", and provide a means by which a
PPP channel can set the hard_header_len.</p>

<p>Aside from this issue, the my code doesn't require any non-trivial changes
to other parts of the kernel.</p>

<p>The code I have is functional though it requires some cleaning up.
Eventually I would like to get it into a state suitable for inclusion into
the kernel source and so comments and suggestions about this code are
appreciated.</p>

</quote>

</section>

<section
  title="PCMCIA Is Merged For 2.4"
  subject="Integration of pcnet_cs into drivers/pcmcia"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00190.html"
  posts="15"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="13 Sep 1999 00:00:00 -0800"
>

<p>Pavel Machek said, <quote who="Pavel Machek">So my wish for 2.4 came true:
pcmcia is integrated in kernel.</quote> He posted a patch and there was some
discussion of bugs and implementation. Part of the discussion focused on
whether to put PCMCIA driver information in drivers/net or
drivers/net/modules. Linus Torvalds came out firmly on the side of
drivers/net/modules, adding, <quote who="Linus Torvalds">The "drivers/net"
subdirectory is too much of a random tangle already, it's starting to be
hard to find stuff there. A lot of the newer drivers go into their own
subdirectories already (irda, fc etc)</quote></p>

</section>

<section
  title="devfs Updates"
  subject="[PATCH] devfs v120 available"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00156.html"
  posts="1"
  startdate="08 Sep 1999 00:00:00 -0800"
  enddate="08 Sep 1999 00:00:00 -0800"
>
<topic>FS: devfs</topic>

<p>Richard Gooch gave a pointer to his <a
href="http://www.atnf.csiro.au/~rgooch/linux/kernel-patches.html">patches
page</a> and announced version 120 of devfs, against 2.3.17.</p>

<p>Under the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00468.html">[PATCH]
devfs v121 available</a>, he announced version 121 against 2.3.18, and under
the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00473.html">[PATCH]
devfs v99.5 available</a> he announced version 99.5 for 2.2.12, adding,
<quote who="Richard Gooch">NOTE: the
devfs-patch-v99.x patches are backports to 2.2.x kernels of the latest
devfs-patches (which are for 2.3.x kernels).</quote></p>

</section>

<section
  title="MTRR Code Going Into 2.3.x"
  subject="2.3.17+: MTRR 1.35a stuff for Athlon where?"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00167.html"
  posts="5"
  startdate="09 Sep 1999 00:00:00 -0800"
  enddate="13 Sep 1999 00:00:00 -0800"
>

<mention>Alan Cox</mention>

<p>Dieter Netzel asked if anyone would please port Alan Cox's MTRR 1.35a code
from 2.2 to 2.3 so he could get his AMD Athlon 500 working. Alan quickly
pointed out that the code was actually written by Zoltan Boszormenyi, and
should drop cleanly into 2.3 as well. Zoltan Boszormenyi gave a pointer to
<a href="ftp://ftp.externet.hu/pub/people/zboszor/mtrr.c-2.3.16.diff">his
patch</a>, adding, <quote who="Zoltan Boszormenyi">This contains the Athlon
support and a fix for Cyrix processors. I would call it 1.36 but Richard
Gooch is the official maintainer and I got no replies from him yet.</quote>
Richard Gooch replied, <quote who="Richard Gooch">Yeah, I know. Apologies.
Things should get back to normal for me over the next couple of weeks, now
that I've finally taken delivery of a machine I can comfortably work on.
Next step is to organise how I maintain my ftp area (and where I keep it).
Sigh.</quote> Dieter also replied to Zoltan, reporting success with the
patch. He also noticed some "unresolved symbol" problems, but there was no
reply.</p>

</section>

<section
  title="2.2.13pre5 Announced"
  subject="Patch 2.2.13pre5"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00262.html"
  posts="4"
  startdate="09 Sep 1999 00:00:00 -0800"
  enddate="09 Sep 1999 00:00:00 -0800"
>
<topic>Kernel Release Announcement</topic>

<p>Alan Cox announced 2.2.13pre5, Joel Klecker reported that gcc 2.95.1 gave
errors with it, and Alan replied, <quote who="Alan Cox">Its recommended you
dont build 2.2.x with gcc 2.95, but obviously since the fix is relevant to
2.3.x a patch to fix this would be nice.</quote></p>

<p>Under the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00489.html">2.2.13
&amp; gcc-2.95.1</a>, Garst R. Reese said, <quote who="Garst R.
Reese">Up until 2.2.13pre5 I had no problems with
gcc-2.95.1. Has a decision been reached to just definitely break 2.2 wrt
gcc-2.95.1?</quote> There was no reply.</p>

</section>

<section
  title="Errors When Moving A System From SMP To UP"
  subject="SMP problem"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00452.html"
  posts="2"
  startdate="10 Sep 1999 00:00:00 -0800"
  enddate="10 Sep 1999 00:00:00 -0800"
>
<topic>SMP</topic>

<p>Julien May discovered that compiling his kernel without SMP (after having
previously compiled it <em>with</em> SMP support) would give errors. Rui
Sousa replied that configuration scripts tended to break when moving from
SMP to UP kernels. Instead of "make dep; make clean; make bzImage", which
Julien had been doing, Rui suggested:</p>

<pre>cd /usr/src/linux
cp .config .config.backup
make mrproper
cp .config.backup .config
make oldconfig
make dep
etc</pre>

</section>

<section
  title="Linus Announces A Feature Freeze"
  subject="Linux-2.3.18... and a freeze"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00460.html"
  posts="2"
  startdate="10 Sep 1999 00:00:00 -0800"
  enddate="10 Sep 1999 00:00:00 -0800"
>
<topic>Code Freeze</topic>
<topic>Feature Freeze</topic>
<topic>Kernel Release Announcement</topic>

<mention>David Hinds</mention>

<p>Linus Torvalds announced Linux 2.3.18, saying:</p>

<quote who="Linus Torvalds">

<p>Linux-2.3.18 is out there now, and
it also marks the beginning of the long-promised feature freeze for 2.4.x.
To make that freeze more effective, I'm taking two weeks off, just so that
you simply CANNOT tempt me with features.</p>

<p>Thanks to David Hinds and others for the last weeks of merging of PCMCIA
etc, I'm now officially happy.</p>

<p>Note that feature freeze is different from code freeze. We'll still do
updates of drivers etc without being too anal about it, and even completely
new drivers (or possibly filesystems) etc may possibly be accepted as long
as they don't impact _anything_ else and don't imply a completely new
approach to something. Drivers in particular tend to be updated even in the
stable kernel, after all.</p>

<p>But expect me to be less than enthusiastic about even new drivers. New ideas
for core functionality are right out.</p>

<p>The feature freeze should be turning into a code freeze in another two
months or so, and a release by the end of the year. And as everybody knows,
our targets never slip.</p>

<p>And as I said, don't even bother emailing me for the next two weeks, because
you won't be reaching me anyway, and the mail accumulated over the two weeks
will be unceremoniously dumped into a toxic waste container, to be buried in
concrete somewhere at sea. Never to be opened again, in short.</p>

</quote>

</section>

<section
  title="2.2.13pre6 Announced"
  subject="Linux 2.2.13pre6"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00482.html"
  posts="4"
  startdate="10 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>
<topic>Disks: SCSI</topic>
<topic>SMP</topic>

<p>Alan Cox announced:</p>

<quote who="Alan Cox">

<p>I've put up 2.2.13pre6. There
are a couple of small things to go in (PPC strnlen_user etc) but other than
that I don't plan to add anything else but obvious bug fixes to this. It has
two weeks to settle down while Linus has a break.</p>

<p>I'd like to get to the bottom of the SMP sound/floppy bug and some of the
other longer standing oddities but thats it. If we have a rock solid 2.2.13
then knfsd updates can go into 2.2.14.</p>

</quote>

<p>Chuck Mead asked, <quote who="Chuck Mead">Two
questions... are the memory leak problems fixed in pre6 and what's happening
with the SCSI problems you've been talking about and the fdomain.o
bug?</quote></p>

<p>Alan replied, <quote who="Alan Cox">The memory leak
seems to be sorted. The future domain/scsi stuff isn't going to get solved
that rapidly. In 2.3.18 the scsi layer is getting cleaned up and tidied.
That should eventually reveal how a command is getting queued in some cases
when its not allowed to be.</quote></p>

</section>

<section
  title="CBMFS v0.4 For 2.2.12"
  subject="CBMFS v0.4 for kernel v2.2.12"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00487.html"
  posts="1"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="11 Sep 1999 00:00:00 -0800"
>

<p>David Weinehall gave a pointer to <a
href="http://www.acc.umu.se/~tao/linux/patches.html">a CBMFS v0.4e patch on
his home page</a> and announced:</p>

<quote who="David Weinehall">

<p>A patch that makes it
possible to mount .d64, .d71 and .d81 disk images from the good old
Commodore-machines. You can either copy the images onto a block-device (for
instance a floppy) and mount them that way, or use the loopback device.</p>

<p>1581-disks (3.5" DD disks) can also be mounted directly from a normal
PC-floppy (dunno about other platforms.)</p>

<p>Most of this driver is written by Dan Fandrich, I've just ported it to the
v2.2 kernels, fixed it up a little, cleaned up the code, added support for
.d71 images and made it compilable into the kernel (before it could only be
compiled as module.) Oh, and I added a Configure.help entry too...</p>

</quote>

</section>

<section
  title="Alan Cox Starts 2.3.18acX Series For Linus' Vacation"
  subject="Linux 2.3.18ac1"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00492.html"
  posts="1"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="11 Sep 1999 00:00:00 -0800"
>

<p>Alan Cox gave a pointer to <a
href="ftp://ftp.kernel.org/pub/linux/alan/2.3.18ac/">a patch page</a> and
announced, <quote who="Alan Cox">Well Linus is away for a couple of weeks so
I'll start doing -ac patches to collect all the fixes and stuff. If you have
some grand subsystem rewrite even one Linus promised to accept - you can
feed it to Linus in two weeks time If you have driver updates, fixes,
compile warning removals and the like then you can send them in so I can
feed Linus a nice structured and complete fix set when he returns.</quote></p>

</section>

<section
  title="Ramdisk Fix For 2.3.18"
  subject="broken ramdisk in linux 2.3.18"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00579.html"
  posts="3"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>

<mention>Clifford Wolf</mention>

<p>This issue came up before in <kcref subject="[patch] ramdisk blocksize"
startdate="20 Aug 1999 00:00:00 -0800"></kcref>. This time, Clifford Wolf reported ramdisk
problems, and Andrea Arcangeli replied, <quote who="Andrea Arcangeli">The
ramdisk is a known bug. To fix it I'll have to change some part of the
page-cache/buffer code. I just posted a patch which fix it but Linus
convinced me that for the coherency issue it's better to avoid shrinking
inodes with page-cache queued on them. So I'll have to redo the page-cache
patch removing the inode part and then I'll have to rewrite the inode
allocation using the slab.</quote></p>

<p>Under the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00629.html">[patch]
2.3.18-ac1 ramdisk fixes</a>, Andrea posted a patch against 2.3.18ac1,
adding that it should fix the ramdisk device. He said, <quote who="Andrea
Arcangeli">Actually the ramdisk doesn't work because
after uploading a ramdisk via the buffer layer, we can't reach the data from
the page-cache because the data is in the buffer layer. So basically the
ramdisk must search the buffer cache to work. To use the ramdisk to generate
disk images, the page-cache must also be converted back to buffer cache in
order to allow `cp /dev/ramdisk image` to see the file-data.</quote></p>

</section>

<section
  title="Some Good Low-Latency Benchmarks"
  subject="low-latency benchmarks: excellent results of RTC clock + SIGIO notification, audio-latency now down to 2.1ms!"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00567.html"
  posts="3"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="11 Sep 1999 00:00:00 -0800"
>
<topic>Real-Time</topic>
<topic>Sound: MIDI</topic>

<p>Benno Senoner reported:</p>

<quote who="Benno Senoner">

<p>good news folks:</p>

<p>Paul Barton Davis added async notification via SIGIO to the RTC device, and
I enhanced "latencytest" (you can get the latest version from my page) to
measure timedifferences between two SIGIO calls, All benchmarks performed
using Mingo's low-latency patch (without his patch timing sucks) The results
are very good, In my example I used an RTC frequency of 2048HZ, and the
maximum jitter was about 500usecs (very sporadic , shows up every
60-100secs).</p>

<p>look at the the results:<br />
CPU load=80%<br />
<a href="http://www.gardena.net/benno/linux/audio/rtc2048-cpu80/2048.html">http://www.gardena.net/benno/linux/audio/rtc2048-cpu80/2048.html</a></p>

<p>CPU load=10%<br />
<a href="http://www.gardena.net/benno/linux/audio/rtc2048-cpu10/2048.html">http://www.gardena.net/benno/linux/audio/rtc2048-cpu10/2048.html</a></p>

<p>A typical use could be an app which needs 1ms timing precision (MIDI
sequencer for example).</p>

<p>I have more good news, On my audio benchmarks I was able to reduce the audio
buffer size from 4.3ms to ONLY 2.1ms ( 3x0.7ms buffers) ! , without losing
reliability, in this case the max jitter is about 0.7ms in the range of the
fragment-time.</p>

<p>look at the results:<br />
CPU load=80%<br />
<a href="http://www.gardena.net/benno/linux/audio/audio3x128-cpu80/3x128.html">http://www.gardena.net/benno/linux/audio/audio3x128-cpu80/3x128.html</a></p>

<p>CPU load=10%<br />
<a href="http://www.gardena.net/benno/linux/audio/audio3x128-cpu10/3x128.html">http://www.gardena.net/benno/linux/audio/audio3x128-cpu10/3x128.html</a></p>

<p>It's interesting that If I use 4.3ms = 3x1.45ms buffers, the max jitter
(again very sporadic) is about 1.5ms , the time it takes to play one
fragment.</p>

<p>Seems that under high disk I/O load, (very seldom, about every 30-100secs)
the process gets woken up one IRQ period later. Ideas why this happens.</p>

<p>The trick to deliver rock-solid audio seems to use 3 buffer, so that you can
have about 33% headroom.</p>

<p>Seems that we are now able to outperform most of the other OSes in terms of
timing precision/ latency (multimedia loves this) :-)</p>

<p>In future, we will probably not need RT-Linux to deliver realtime audio on
Linux. (As processors get faster, jitter will go down)</p>

</quote>

</section>

<section
  title="Modularized PCMCIA Fix To 2.3.18"
  subject="2.3.18 PCMCIA bug"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00681.html"
  posts="2"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>

<mention>Alan Cox</mention>
<mention>Bernhard Rosenkraenzer</mention>

<p>Bernhard Rosenkraenzer reported that compiling all PCMCIA-related stuff as a
module in 2.3.18 gave errors, and Alan Cox replied that that he believed it
to be fixed in the -ac series. EOT.</p>

</section>

<section
  title="PCI Patches For 2.3.18"
  subject="PCI patch for 2.3.18"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00623.html"
  posts="7"
  startdate="11 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>
<topic>PCI</topic>

<p>Martin Mares gave a pointer to his <a
href="ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/alpha/l-pci-2.3.18-1.gz">PCI
patch</a> and announced a new version, primarily composed of fixes and
cleanups for 2.3.18.</p>

<p>Under the Subject: <a
href="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00729.html">PCI
patch for 2.3.18, version 2</a>, Martin gave a pointer to a <a
href="ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/alpha/l-pci-2.3.18-2.gz">new
version of his patch</a> and announced, <quote who="Martin Mares">I've changed the resource management stuff in
arch/i386/kernel/bios32.c, so that it should be able to cope even with the
most weird BIOSes and not change device addresses unless it's
unavoidable.</quote> He added, <quote who="Martin Mares">If you have a machine with multiple PCI buses or a BIOS
which is known to forget to assign some addresses or to enable some PCI
devices, please give it a try and tell me whether it works.</quote></p>

</section>

<section
  title="VFAT Nears Stability, Needs Brave Testers"
  subject="vfat, scsi &amp; serial port status?"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00653.html"
  posts="2"
  startdate="12 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>
<topic>FS: VFAT</topic>

<p>Benjamin Close asked if vfat was stable enough to enable write support in
2.3.18, and Alan Cox replied, <quote who="Alan Cox">Not sure.</quote></p>

</section>

<section
  title="CD-ROM Updates To 2.3.18"
  subject="CD-ROM updates - 2.3.18"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00704.html"
  posts="4"
  startdate="12 Sep 1999 00:00:00 -0800"
  enddate="12 Sep 1999 00:00:00 -0800"
>
<topic>Disks: SCSI</topic>

<mention>Thomas Molina</mention>
<mention>Linus Torvalds</mention>
<mention>Erik Andersen</mention>

<p>Jens Axboe said:</p>

<quote who="Jens Axboe">

<p>I'm not sure how many are
aware that I keep current CD-ROM patches at <a
href="http://www.kernel.dk">http://www.kernel.dk</a>? Enough plugging... The
current patch against 2.3.18 contains:</p>

<ul>

<li>Partition based multisession mounting. For instance, mount /dev/hdc2
/mnt/cdrom would mount the second session on the CD. Two notes - a) it only
works on ATAPI drives, since SCSI drives use minors differently... b)
mounting /dev/hdc2 overrides a specified session= option to mount.</li>

<li>Uniform CD Changer support. This was largely done by Richard Sharman and
tested by Erik Andersen (a bit, at least!). Now both ATAPI and SCSI changers
should work. This also gets rid of the awful CONFIG_IDECD_SLOTS config
option.</li>

<li>Video CD / CDi fixes.</li>

<li>Fixes a couple of leaks in cdrom.c</li>

<li>The obligatory cleanups. Note that pcd.c is untested, Grant is looking
into what needs to be done to get this in complete working order.</li>

</ul>

</quote>

<p>Thomas Molina asked if these patches were being folded into the Linus
Torvalds tree, or were they "neat" features he hadn't or wouldn't accept.
Jens replied that they were being fully integrated.</p>

</section>

<section
  title="Some Explanation Of Internals"
  subject="ide_do_drive_cmd() problems"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00705.html"
  posts="4"
  startdate="12 Sep 1999 00:00:00 -0800"
  enddate="13 Sep 1999 00:00:00 -0800"
>
<topic>Disks: IDE</topic>
<topic>SMP</topic>

<p>In the course of discussion, Gadi Oxman gave a fascinating explanation of
some kernel internals:</p>

<quote who="Gadi Oxman">

<p>The reason we added the cli()
to ide_do_drive_cmd() before the down() call originally (in 1.3.something,
before Linux had SMP support), was to minimize the time inside down() in
which an interrupt completion of the just queued request could call up() and
race with us calling down().</p>

<p>On a UP kernel, down(), eventually calling schedule, was performing an
implicit (single processor) sti() for us at a later stage. So if the drive
was able to complete the request immediately, the completion interrupt would
have been delayed a bit until that point of the implicit sti().</p>

<p>On a SMP kernel, a global cli() does a local processor __cli(), and grabs
the global irq lock. down(), calling schedule(), would eventually release
the irq lock before selecting another process.</p>

<p>If, however, somewhere between the call to down() and the release of the irq
lock, someone calls local __sti() *and* unluckily, the request could have
been serviced by the drive quickly, we would attempt to grab the irq lock on
the processor which already owns it and deadlock.</p>

<p>In the path called by down(), I can see the run_task_queue() call, which is
called by schedule() before the release_kernel_lock() call. This call, for
example, can call unplug_device() for another IDE interface which has queued
requests, and there we would do an __sti() in the ide_do_request()
function.. Does moving the run_task_queue() call after the
release_kernel_lock() call makes any difference with the original
ide_do_drive_cmd()?</p>

<p>BTW, our attempt to minimize the race potential between down() and up() is
probably no longer needed with current kernels, as the semaphores are SMP
and interrupt safe. The important part is to install the semaphore in the
request before grabbing the io_request_lock and adding it to the queue, and
we should safely be able to remove the save_flags(), cli() (both global and
local) and restore_flags() around the call to down(), and let the standard
kernel up()/down() functions handle the race between them.</p>

</quote>

</section>

<section
  title="ESS1869 Fix"
  subject="[PATCH] ESS1869 fix"
  archive="http://kernelnotes.org/lnxlists/linux-kernel/lk_9909_02/msg00804.html"
  posts="2"
  startdate="13 Sep 1999 00:00:00 -0800"
  enddate="13 Sep 1999 00:00:00 -0800"
>

<p>Daniel Robert Franklin posted a patch and said, <quote who="Daniel Robert
Franklin">This patch makes my ESS1869 card (in a
Compaq Armada 1500c notebook) play at the right speed. It is against 2.3.18.
It fixes what looks like a typo in the source code - the switch statement
appears twice, once with the 1869 line commented out. If it isn't commented
out, sound plays really slowly.</quote> Petru Paler confirmed the problem
and reported complete success with Daniel's patch.</p>

</section>

</kc>
