<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="261" date="09 Jun 2004 00:00:00 -0800" />

<stats posts="999" size="5189" contrib="341" multiples="156" lastweek="141">

<person posts="55" size="260" who="Greg KH" />
<person posts="41" size="298" who="Paul Jackson" />
<person posts="33" size="230" who="Andrew Morton" />
<person posts="32" size="117" who="Sergiy Lozovsky" />
<person posts="17" size="99" who="Sam Ravnborg" />
<person posts="14" size="111" who="Geert Uytterhoeven" />
<person posts="14" size="103" who="Denis Vlasenko" />
<person posts="13" size="47" who="Daniel Ritz" />
<person posts="13" size="44" who="Duncan Sands" />
<person posts="13" size="43" who="Timothy Miller" />
<person posts="13" size="35" who="Chris Wright" />
<person posts="12" size="43" who="Russell King" />
<person posts="12" size="36" who="Andrea Arcangeli" />
<person posts="12" size="32" who="Jeff Garzik" />
<person posts="11" size="35" who="James Bottomley" />
<person posts="10" size="62" who="Hugh Dickins" />
<person posts="10" size="29" who="Kevin Corry" />
<person posts="9" size="84" who="Mingming Cao" />
<person posts="9" size="63" who="Jean Tourrilhes" />
<person posts="9" size="45" who="Horst von Brand" />
<person posts="9" size="42" who="Zwane Mwaikambo" />
<person posts="8" size="82" who="Alex Williamson" />
<person posts="8" size="31" who="Andy Isaacson" />
<person posts="8" size="25" who="Marcus Hartig" />
<person posts="8" size="24" who="Nick Piggin" />
<person posts="8" size="21" who="(viro)" />
<person posts="7" size="87" who="Kitt Tientanopajai" />
<person posts="7" size="30" who="Hanna Linder" />
<person posts="7" size="27" who="Tim Blechmann" />
<person posts="7" size="26" who="Paul Wagland" />
<person posts="7" size="24" who="&quot;Martin J. Bligh&quot;" />
<person posts="7" size="21" who="Fabian Frederick" />
<person posts="7" size="21" who="Marcel Holtmann" />
<person posts="7" size="20" who="Jamie Lokier" />
<person posts="7" size="18" who="Adam Belay" />
<person posts="6" size="49" who="Andy Lutomirski" />
<person posts="6" size="37" who="&quot;Ivica Ico Bukvic&quot;" />
<person posts="6" size="29" who="Marc Giger" />
<person posts="6" size="28" who="Jakub Jelinek" />
<person posts="6" size="19" who="Matt Mackall" />
<person posts="6" size="18" who="Chris Friesen" />
<person posts="6" size="16" who="Andi Kleen" />
<person posts="5" size="23" who=" (Marcel Sebek)" />
<person posts="5" size="18" who="Olaf Dietsche" />
<person posts="5" size="17" who="(Valdis.Kletnieks)" />
<person posts="5" size="15" who="(raven)" />
<person posts="5" size="13" who="Andi Kleen" />
<person posts="5" size="13" who="Ivan Kokshaysky" />
<person posts="5" size="13" who="Larry McVoy" />
<person posts="4" size="94" who="&quot;Protasevich, Natalie&quot;" />
<person posts="4" size="37" who="Paul Eggert" />
<person posts="4" size="27" who="Dave Airlie" />
<person posts="4" size="18" who="Axel Weiss" />
<person posts="4" size="17" who=" (=?iso-8859-1?q?M=E5ns_Rullg=E5rd?=)" />
<person posts="4" size="17" who="&quot;Shawn Starr&quot;" />
<person posts="4" size="16" who="Jin Suh" />
<person posts="4" size="15" who="John Cherry" />
<person posts="4" size="14" who="Badari Pulavarty" />
<person posts="4" size="13" who="Benjamin Herrenschmidt" />
<person posts="4" size="13" who="Arjan van de Ven" />
<person posts="4" size="13" who="Jim Meyering" />
<person posts="4" size="12" who="&quot;Randy.Dunlap&quot;" />
<person posts="4" size="12" who="Trond Myklebust" />
<person posts="4" size="11" who="Marcelo Tosatti" />
<person posts="4" size="10" who="&quot;J. Ryan Earl&quot;" />
<person posts="4" size="10" who="&quot;David S. Miller&quot;" />
<person posts="4" size="10" who="Robin Rosenberg" />
<person posts="4" size="9" who="John Bradford" />
<person posts="3" size="58" who="&quot;Peter Maas&quot;" />
<person posts="3" size="53" who="Rusty Russell" />
<person posts="3" size="46" who="&quot;Sergey S. Kostyliov&quot;" />
<person posts="3" size="44" who="Paul P Komkoff Jr" />
<person posts="3" size="43" who="Brice Goglin" />
<person posts="3" size="22" who="Nathan Lynch" />
<person posts="3" size="18" who="Len Brown" />
<person posts="3" size="16" who="Jesse Pollard" />
<person posts="3" size="10" who="Sascha Wilde" />
<person posts="3" size="10" who="&quot;Benjamin Herrenschmidt&quot;" />
<person posts="3" size="10" who="wim delvaux" />
<person posts="3" size="10" who="&quot;Chris Friesen&quot;" />
<person posts="3" size="10" who="Matthew Dobson" />
<person posts="3" size="9" who="Gene Heskett" />
<person posts="3" size="9" who="Jon Grimm" />
<person posts="3" size="9" who="Bartlomiej Zolnierkiewicz" />
<person posts="3" size="9" who="Kirill Korotaev" />
<person posts="3" size="9" who="&quot;Richard B. Johnson&quot;" />
<person posts="3" size="8" who="Samium Gromoff" />
<person posts="3" size="8" who="Kim Holviala" />
<person posts="3" size="8" who="Bill Davidsen" />
<person posts="2" size="55" who="Eric Uhrhane" />
<person posts="2" size="46" who="Daniel Jacobowitz" />
<person posts="2" size="36" who="Mariusz =?iso-8859-2?q?Koz=B3owski?=" />
<person posts="2" size="32" who="Romain Lievin" />
<person posts="2" size="24" who="Rene Herman" />
<person posts="2" size="22" who="Andy Whitcroft" />
<person posts="2" size="19" who="Chris Meadors" />
<person posts="2" size="19" who="Darren Hart" />
<person posts="2" size="17" who="Niraj Kumar" />
<person posts="2" size="17" who="Olof Johansson" />
<person posts="2" size="16" who="(foo)" />
<person posts="2" size="15" who="Alexander Hoogerhuis" />
<person posts="2" size="14" who="Matthew Dharm" />
<person posts="2" size="13" who="&quot;Dr. David Alan Gilbert&quot;" />
<person posts="2" size="12" who="Pete Zaitcev" />
<person posts="2" size="11" who="Ravi Kumar Munnangi" />
<person posts="2" size="10" who="KOVACS Krisztian" />
<person posts="2" size="10" who="Peter Seiderer" />
<person posts="2" size="9" who="Markku Savela" />
<person posts="2" size="9" who="Ross Dickson" />
<person posts="2" size="9" who="Dub Spencer" />
<person posts="2" size="9" who="David Mansfield" />
<person posts="2" size="9" who="Vitez Gabor" />
<person posts="2" size="9" who="Kronos" />
<person posts="2" size="8" who="Hugo Mills" />
<person posts="2" size="8" who="&quot;Alexander Y. Fomichev&quot;" />
<person posts="2" size="8" who="&quot;John Stoffel&quot;" />
<person posts="2" size="7" who="Herbert Xu" />
<person posts="2" size="7" who="Ron Peterson" />
<person posts="2" size="7" who="martin f krafft" />
<person posts="2" size="7" who="john stultz" />
<person posts="2" size="7" who="Andy Lutomirski" />
<person posts="2" size="6" who=" &lt;kernel@cc.iitkgp.ernet.in&gt;" />
<person posts="2" size="6" who="Philippe Elie" />
<person posts="2" size="6" who="mohanlal jangir" />
<person posts="2" size="6" who="Dirk Morris" />
<person posts="2" size="6" who=" &lt;osmaker@mailbox.hu&gt;" />
<person posts="2" size="6" who="David Weinehall" />
<person posts="2" size="6" who="Helge Hafting" />
<person posts="2" size="6" who="Jean Delvare" />
<person posts="2" size="6" who="&quot;Emiliano 'AlberT' Gabrielli&quot;" />
<person posts="2" size="6" who="&quot;Patrick J. LoPresti&quot;" />
<person posts="2" size="6" who="Philippe Troin" />
<person posts="2" size="6" who="Alex Tomas" />
<person posts="2" size="6" who="David Gibson" />
<person posts="2" size="6" who="Albert Cahalan" />
<person posts="2" size="6" who="Bruce Allen" />
<person posts="2" size="6" who="John Belmonte" />
<person posts="2" size="5" who="Wim Van Sebroeck" />
<person posts="2" size="5" who="Guennadi Liakhovetski" />
<person posts="2" size="5" who="Redeeman" />
<person posts="2" size="5" who="&quot;Calin A. Culianu&quot;" />
<person posts="2" size="5" who="&quot;Maciej W. Rozycki&quot;" />
<person posts="2" size="5" who="Martin Rode" />
<person posts="2" size="5" who="Bryan O'Sullivan" />
<person posts="2" size="5" who="&quot;Miquel van Smoorenburg&quot;" />
<person posts="2" size="5" who="Francois Romieu" />
<person posts="2" size="5" who="Erik Mouw" />
<person posts="2" size="5" who="Oliver Neukum" />
<person posts="2" size="5" who="Marc Singer" />
<person posts="2" size="5" who="Don Koch" />
<person posts="2" size="5" who="Anton Blanchard" />
<person posts="2" size="5" who="Jon Tidswell" />
<person posts="2" size="4" who="Jeremy Martin" />
<person posts="2" size="4" who="Bryan Koschmann - GKT" />
<person posts="2" size="4" who="MNH" />
<person posts="2" size="4" who="Manfred Spraul" />
<person posts="1" size="82" who="David Brownell" />
<person posts="1" size="49" who="Gustavo Franco" />
<person posts="1" size="36" who="Clemens Schwaighofer" />
<person posts="1" size="33" who="&quot;Jim Gifford&quot;" />
<person posts="1" size="33" who="Marcelo Tosatti" />
<person posts="1" size="32" who="Stefano Rivoir" />
<person posts="1" size="30" who="Josh Logan" />
<person posts="1" size="26" who="&quot;Siddha, Suresh B&quot;" />
<person posts="1" size="24" who="Srivatsa Vaddagiri" />
<person posts="1" size="16" who="Stuart Inglis" />
<person posts="1" size="15" who="David Woodhouse" />
<person posts="1" size="15" who="Vincent Lefevre" />
<person posts="1" size="15" who="Christian Kuehn" />
<person posts="1" size="13" who="&quot;haael&quot;" />
<person posts="1" size="11" who="Chris Shoemaker" />
<person posts="1" size="8" who="&quot;Chen, Kenneth W&quot;" />
<person posts="1" size="8" who="David Johnson" />
<person posts="1" size="8" who="Redeeman" />
<person posts="1" size="7" who="Peter =?ISO-8859-1?Q?W=E4chtler?=" />
<person posts="1" size="7" who="Pawel Dziekonski" />
<person posts="1" size="7" who=" (Nathanael Nerode)" />
<person posts="1" size="7" who="Andrew Vasquez" />
<person posts="1" size="7" who="Christoph Lameter" />
<person posts="1" size="6" who="&quot;Michael E. Thomadakis&quot;" />
<person posts="1" size="6" who="(alex)" />
<person posts="1" size="6" who="Martin Hermanowski" />
<person posts="1" size="5" who="Paul Wagland" />
<person posts="1" size="5" who="(shai)" />
<person posts="1" size="5" who="Robert Wisniewski" />
<person posts="1" size="5" who="Frank Horowitz" />
<person posts="1" size="5" who="Richard James" />
<person posts="1" size="5" who="Joel Jaeggli" />
<person posts="1" size="4" who="Adam K Kirchhoff" />
<person posts="1" size="4" who="Kevin Fox" />
<person posts="1" size="4" who="Domenico Andreoli" />
<person posts="1" size="4" who="Andreas Steinmetz" />
<person posts="1" size="4" who="Wim Coekaerts" />
<person posts="1" size="4" who="Stephen Hemminger" />
<person posts="1" size="4" who="Steven Walter" />
<person posts="1" size="4" who="Linus Torvalds" />
<person posts="1" size="4" who="&quot;Lora Yin (HangZhou)&quot;" />
<person posts="1" size="4" who="Janne Pikkarainen" />
<person posts="1" size="4" who="Michael Baehr" />
<person posts="1" size="4" who="Martin Waitz" />
<person posts="1" size="4" who="Brian Gerst" />
<person posts="1" size="4" who="Stuart Longland" />
<person posts="1" size="3" who="Andries Brouwer" />
<person posts="1" size="3" who="Byron Stanoszek" />
<person posts="1" size="3" who="Daniel Pittman" />
<person posts="1" size="3" who="cliff white" />
<person posts="1" size="3" who="Matthew Wilcox" />
<person posts="1" size="3" who="(enetgfastv)" />
<person posts="1" size="3" who="Tom Sightler" />
<person posts="1" size="3" who="Martin Hermanowski" />
<person posts="1" size="3" who="=?ISO-8859-1?Q?J=F6rgen?= Lidholm" />
<person posts="1" size="3" who="&quot;K.Anantha Kiran&quot;" />
<person posts="1" size="3" who="&quot;krupa&quot;" />
<person posts="1" size="3" who="Dave Jones" />
<person posts="1" size="3" who="Segher Boessenkool" />
<person posts="1" size="3" who="Hans Reiser" />
<person posts="1" size="3" who="&quot;Segher Boessenkool&quot;" />
<person posts="1" size="3" who="Matthias Andree" />
<person posts="1" size="3" who="Karim Yaghmour" />
<person posts="1" size="3" who="Eric Sandeen" />
<person posts="1" size="3" who="Wolfgang Fritz" />
<person posts="1" size="3" who="Jan-Benedict Glaw" />
<person posts="1" size="3" who="&quot;Nikita V. Youshchenko&quot;" />
<person posts="1" size="3" who="(fisherm)" />
<person posts="1" size="3" who="Miles Bader" />
<person posts="1" size="3" who="Trent Lloyd" />
<person posts="1" size="3" who="Michael Hunold" />
<person posts="1" size="3" who="(sam)" />
<person posts="1" size="3" who="Nick Piggin" />
<person posts="1" size="3" who="Christoph Terhechte" />
<person posts="1" size="3" who="Meelis Roos" />
<person posts="1" size="3" who="Alex Murphy" />
<person posts="1" size="3" who="Daniel Egger" />
<person posts="1" size="3" who="Adrian Bunk" />
<person posts="1" size="3" who="Eugene Teo" />
<person posts="1" size="3" who="Andre Eisenbach" />
<person posts="1" size="3" who="Paul Davis" />
<person posts="1" size="3" who="Anthony DiSante" />
<person posts="1" size="3" who="MAEDA Naoaki" />
<person posts="1" size="3" who="Steve Lord" />
<person posts="1" size="3" who="Nikita Danilov" />
<person posts="1" size="3" who="Stephen Smoogen" />
<person posts="1" size="3" who="Martin Knoblauch" />
<person posts="1" size="3" who="Tomasz Torcz" />
<person posts="1" size="3" who="Jeremy Higdon" />
<person posts="1" size="3" who="Michael Driscoll" />
<person posts="1" size="3" who="&quot;Art Haas&quot;" />
<person posts="1" size="3" who="Nathan Scott" />
<person posts="1" size="3" who="&quot;Amit S. Kale&quot;" />
<person posts="1" size="3" who="Muli Ben-Yehuda" />
<person posts="1" size="3" who="David Hinds" />
<person posts="1" size="3" who="&quot;Paul E. McKenney&quot;" />
<person posts="1" size="3" who="Paul Mackerras" />
<person posts="1" size="3" who="Marc-Christian Petersen" />
<person posts="1" size="3" who="Peter Chubb" />
<person posts="1" size="3" who="Pasi Sjoholm" />
<person posts="1" size="3" who="Alex Deucher" />
<person posts="1" size="3" who="Lars Marowsky-Bree" />
<person posts="1" size="3" who="Andreas Schwab" />
<person posts="1" size="3" who="Alex Davis" />
<person posts="1" size="3" who="Vladimir Saveliev" />
<person posts="1" size="2" who="John Reiser" />
<person posts="1" size="2" who=" (Paul Jarc)" />
<person posts="1" size="2" who="Miles Bader" />
<person posts="1" size="2" who="&quot;Richard B. Johnson&quot;" />
<person posts="1" size="2" who="Nathan Straz" />
<person posts="1" size="2" who="legion" />
<person posts="1" size="2" who="Aaron Smith" />
<person posts="1" size="2" who="Will McDonald" />
<person posts="1" size="2" who="Igor Bukanov" />
<person posts="1" size="2" who="Danny Cox" />
<person posts="1" size="2" who="Alessandro Suardi" />
<person posts="1" size="2" who="James Morris" />
<person posts="1" size="2" who="Jon Oberheide" />
<person posts="1" size="2" who=" (Eric W. Biederman)" />
<person posts="1" size="2" who="(jc-nospam)" />
<person posts="1" size="2" who="&quot;Robert L. Harris&quot;" />
<person posts="1" size="2" who="&quot;Christoph Terhechte&quot;" />
<person posts="1" size="2" who="Andy Isaacson" />
<person posts="1" size="2" who="&quot;Trever L. Adams&quot;" />
<person posts="1" size="2" who="Ben Collins" />
<person posts="1" size="2" who="Mathias Peters" />
<person posts="1" size="2" who="Jan Killius" />
<person posts="1" size="2" who="Tom Dickson" />
<person posts="1" size="2" who="David Howells" />
<person posts="1" size="2" who="(support)" />
<person posts="1" size="2" who="Alan Stern" />
<person posts="1" size="2" who="Michael Wu" />
<person posts="1" size="2" who="Bernhard Rosenkraenzer" />
<person posts="1" size="2" who="&quot;Cef (LKML)&quot;" />
<person posts="1" size="2" who="Hacksaw" />
<person posts="1" size="2" who="Dave Kleikamp" />
<person posts="1" size="2" who="&quot;John Que&quot;" />
<person posts="1" size="2" who="Andrew Walrond" />
<person posts="1" size="2" who="Ian Kent" />
<person posts="1" size="2" who="Dumitru Ciobarcianu" />
<person posts="1" size="2" who="Ian Stirling" />
<person posts="1" size="2" who="(plazmcman)" />
<person posts="1" size="2" who="&quot;Luiz Fernando N. Capitulino&quot;" />
<person posts="1" size="2" who="Marc-Christian Petersen" />
<person posts="1" size="2" who="&quot;Mohamed Aslan&quot;" />
<person posts="1" size="2" who="Noel Maddy" />
<person posts="1" size="2" who="&quot;Andrew Vasquez&quot;" />
<person posts="1" size="2" who="Rick Lindsley" />
<person posts="1" size="2" who="&quot;David L&quot;" />
<person posts="1" size="2" who="Jouni Malinen" />
<person posts="1" size="2" who="Christian Roessner" />
<person posts="1" size="2" who="Paulo Marques" />
<person posts="1" size="2" who="Pavel Machek" />
<person posts="1" size="2" who="(informes)" />
<person posts="1" size="2" who="Mikael Pettersson" />
<person posts="1" size="2" who="Daniel Brahneborg" />
<person posts="1" size="2" who="&quot;David B. Stevens&quot;" />
<person posts="1" size="2" who="Pat LaVarre" />
<person posts="1" size="2" who=" (Arthur Othieno)" />
<person posts="1" size="2" who="Rob Couto" />
<person posts="1" size="2" who="Wichert Akkerman" />
<person posts="1" size="2" who="Jad Saklawi" />
<person posts="1" size="2" who="Jan Dittmer" />
<person posts="1" size="2" who="&quot;Justin Orndorff&quot;" />
<person posts="1" size="2" who="Parag Nemade" />
<person posts="1" size="2" who="Martin Peck" />
<person posts="1" size="2" who=" (=?iso-8859-1?q?Ga=EBl_Le_Mignot?=)" />
<person posts="1" size="2" who="NM Lists" />
<person posts="1" size="2" who="Sid Boyce" />
<person posts="1" size="2" who="Design Patterns Source reflector" />
<person posts="1" size="2" who="Brian Pawlowski" />
<person posts="1" size="2" who="(support)" />
<person posts="1" size="2" who="Sean Neakums" />
<person posts="1" size="2" who="(fabian.frederick)" />
<person posts="1" size="2" who="&quot;Gilmar P. Santos&quot;" />
<person posts="1" size="2" who="Emmanuel Fleury" />
<person posts="1" size="2" who="Eduard Warkentin" />
<person posts="1" size="2" who="Robert Gadsdon" />
<person posts="1" size="2" who="Pete Clements" />
<person posts="1" size="1" who="Nigel Cory-Wright" />
<person posts="1" size="1" who="&quot;Gilmar P. Santos&quot;" />
<person posts="1" size="1" who="Ian Stirling" />
<person posts="1" size="1" who="Soeren Noehr Christensen" />
<person posts="1" size="1" who="Symphony_plastics" />

</stats>

<section
  title="In-Kernel LISP Interpreter For Implementing Dynamic Security Policy"
  subject="kernel stack challenge"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1I2Sb-7SC-29%40gated-at.bofh.it&amp;prev=/groups%3Fas_ugroup%3Dlinux.kernel%26as_uauthors%3DSergiy%2520Lozovsky%26as_usubject%3Dkernel%2520stack%2520challenge%26as_drbb%3Db%26as_mind%3D03%26as_minm%3DApr%26as_miny%3D2004%26as_maxd%3D03%26as_maxm%3DApr%26as_maxy%3D2004"
  posts="84"
  startdate="03 Apr 2004 22:48:50 -0800"
  enddate="09 Apr 2004 20:17:11 -0800"
>
<topic>Virtual Memory</topic>

<p>This was one of those, "this would be weird and great", "no it
wouldn't" discussions. Sergiy Lozovsky started it up innocently enough,
asking how to deal with kernel stack overflow. Then it turned out that
<quote who="Sergiy Lozovsky">I put LISP interpreter inside the Kernel - <a
href="http://vxe.quercitron.com">http://vxe.quercitron.com</a> - It works,
but it use a lot of stack memory. It's impossible to rewrite it easily, though
I'll investigate why exactly it uses so much of stack memory</quote>.</p>

<p>Timothy Miller, who became very outspoken in the thread, wanted to know
why on earth Sergiy felt the need to add a Lisp interpreter to the kernel,
and Sergiy explained that it was for security purposes. First, it would
allow system administrators to configure the system security policies without
having to recompile the kernel or write in the lower-level C language; and
second, it would protect the system from bugs in that security policy, that
might have crept in through errors on the part of the system administrator
doing the configuration. As Sergiy explained it, the <quote who="Sergiy
Lozovsky">LISP interpreter is a LISP Virtual Machine (as Java VM). So all
bugs are incapsulated and don't affect kernel. Even severe bugs in this
LISP kernel module can cause termination of user space application only
(except of stack overflow - which I can address). LISP error message will
be printed in the kernel log.</quote></p>

<p>There was a pretty big discussion about this, mainly involving folks
peppering Sergiy with various objections, and Sergiy attempting to weather
them as best as he could. One objection was that the whole kit and kaboodle
belonged in user space and not in kernel space. John Stoffel said the entire
thing would have to be redesigned in order to have even a small hope of ever
getting a foot-hold in the kernel. He pointed to all the protections Sergiy had
implemented to keep LISP bugs from harming the kernel, as precisely the reason
why the thing belonged in user space in the first place. In user space, there
would be no need for the elaborate kernel protections. In response to this,
Sergiy argued that he was simply extending the traditional UNIX security
model in a natural way; he said that if his LISP interpreter belonged in
user space, then the same argument could be used for putting the checking
of root privileges and file permissions in user space as well.</p>

<p>Another objection folks made against Sergiy's LISP interpreter was the
sheer size of the beast. As Timothy put it in one of his posts, <quote
who="Timothy Miller">A LISP VM is a big, giant, bloated.... *CHOKE* *COUGH*
*SPUTTER* *SUFFOCATE* ... thing which SHOULD NEVER be in the kernel.</quote>
Sergiy replied that the footprint was just 100K. He hadn't implemented the full
Common LISP interpreter, but just a small subset. He said he hadn't been able
to find any Virtual Machine that would fit in a smaller space. At this point,
Robin Rosenberg pointed out that <a href="http://www.lejos.org">LeJOS</a>
for the Lego Mindstorm would fit into 32K, and was licensed under the
Mozilla license.</p>

<p>Another objection was just that LISP was the wrong language in any case,
and that, as Timothy put it, system administrators would never write a
security policy in LISP, but would use something more like the UNIX shell;
or perhaps, he said, <quote who="Timothy Miller">Another possibility is to
develop a set of tools that compile policies written in C into modules that
are loaded/unloaded into the kernel dynamically. :) The compile process would
be transparent to the user, because the "insert this policy" tool would run it
through GCC (unless the cached .ko was already up to date, etc.).</quote></p>

<p>Overall, Sergiy had interesting responses to all the objections, but it
didn't appear that he won anyone over on the important point, namely whether
such a thing should go into the kernel or not.</p>

</section>

<section
  title="Bypassing The Buffer Cache"
  subject="dd PATCH: add conv=direct"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1IsjL-33r-11%40gated-at.bofh.it"
  posts="32"
  startdate="06 Apr 2004 14:03:58 -0800"
  enddate="10 Apr 2004 13:28:16 -0800"
>
<topic>Disks: IDE</topic>
<topic>FS: ext3</topic>
<topic>Version Control</topic>

<p>Andy Isaacson said, <quote who="Andy Isaacson">On modern Linux, apparently
the correct way to bypass the buffer cache when writing to a block device
is to open the block device with O_DIRECT. This enables, for example, the
user to more easily force a reallocation of a single sector of an IDE disk
with a media error (without overwriting anything but the 1k "sector pair"
containing the error). dd(1) is convenient for this purpose, but is lacking
a method to force O_DIRECT. The enclosed patch adds a "conv=direct" flag to
enable this usage.</quote> Andrew Morton was very encouraging, and asked Andy
to do some additional clean-up work as well, while he was busy in that area of
the code. While he was working, Andy encountered some difficulties. He said,
<quote who="Andy Isaacson">I can't get O_DIRECT to work on ext3, at all,
on 2.4.25 -- open(O_DIRECT) succeeds, but the write returns EINVAL.</quote>
Andrew replied, <quote who="Andrew Morton">ext3 doesn't support O_DIRECT in 2.4
kernels.  I did a patch once and I think it's in 2.4-aa kernels.  ext3 supports
O_DIRECT in 2.6 kernels.  Quite a number of filesystems do.</quote></p>

<p>Along the way, it became clear that Andy was only planning to implement
his O_DIRECT support for disk writing only, under the assumption that there
was no point to have it for disk reading as well. But Andrew said there were
the same arguments for enabling O_DIRECT for disk reads as writes, in that
it saved CPU usage and avoided over-using the buffer cache. Andy agreed that
CPU usage would be lower with O_DIRECT read support, but he felt the gain
would not be significant to justify the implementation; while he felt it was
<quote who="Andy Isaacson">the kernel's responsibility to figure out "hey,
looks like a streaming read - let's not blow out the buffer cache trying to
hold 20GB on a 512M system."  If you're saying that the kernel guys have
given up and the established wisdom is now "you gotta use O_DIRECT if you
don't want to throw everything else out due to streaming data", well... I'm
disappointed.</quote> And overall, he concluded:</p>

<quote who="Andy Isaacson">

<p>Wouldn't opening both if= and of= with O_DIRECT turn dd into a synchronous
copier?  That would really suck in the "dd if=/dev/hda1 of=/dev/hdc1" case.
With buffer cache doing readahead, that command can get, say, 40MB/s read
and 40MB/s write; with synch read and synch write, it would drop to 40MB/s
read+write, assuming that block sizes are big enough to amortize seek
overhead.</p>

<p>Having O_DIRECT on just of=, I think you can get back to 40MB/s+40MB/s.</p>

<p>I claim that O_DIRECT on of= is important because you just plain *can not*
do the minimal-sized IDE block scrub without it.  I don't yet see a similar
benefit to O_DIRECT on if= side.</p>

</quote>

<p>Andrew wasn't swayed by any of this, and said on the contrary:</p>

<quote who="Andrew Morton">

<p>If you want a block scrubber then write a block scrubber.</p>

<p>If you want to add O_DIRECT support to dd then it should be implemented
properly, and that means implementing it for both read and write.</p>

<p>In fact the user should be able to specify the read-O_DIRECT and the
write-O_DIRECT independently - if for no other reason than that the source
and dest filesytems may not both support O_DIRECT.</p>

</quote>

<p>Andy felt it really wasn't the best idea, but wrote and submitted a patch
regardless, according to Andrew's specifications. At around this point,
Paul Eggert also posted a patch of his own, to implement the 'dd' features
folks had been creating kernel infrastructure for. He said:</p>

<quote who="Paul Eggert">

<p>At the end of this message is a proposed patch to implement everything
people other than myself have asked for so far, along with several other
things since I was in the neighborhood.</p>

<p>This patch adds the following NEWS entry, which I'll repeat here to make
it easy to see what's going on:</p>

<p>  dd has new conversions for the conv= option:</p>

<pre>    nocreat   do not create the output file
    excl      fail if the output file already exists
    fdatasync physically write output file data before finishing
    fsync     likewise, but also write metadata</pre>

<p>  dd has new iflags= and oflags= options with the following flags:</p>

<pre>    append    append mode (makes sense for output file only)
    direct    use direct I/O for data
    dsync     use synchronized I/O for data
    sync      likewise, but also for metadata
    nonblock  use non-blocking I/O
    nofollow  do not follow symlinks
    noctty    do not assign controlling terminal from file</pre>

<p>This patch is relative to coreutils CVS, so your line numbers may differ.
I didn't add hooks for Solaris-style direction, because that turns out to
be a systemwide property and perhaps should be in a different command.</p>

</quote>

<p>Jim Meyering from 'coreutils' development said he had applied the patch
to the 'coreutils' tree. But Philippe Troin objected, <quote who="Philippe
Troin">noctty definitely seems overkill... I can't see why dd would ever
want to open a file without O_NOCTTY. On systems where O_NOCTTY makes sense
(SvR4) that is.</quote> Paul agreed that this would just confuse the user,
and added a patch to cause 'dd' to always use O_NOCTTY. Jim accepted this
patch as well into 'coreutils'.</p>

</section>

<section
  title="Linux 2.6.5-mm2 Released; Some Broken Cleanup Removed"
  subject="2.6.5-mm2"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1Ie6N-8mS-1%40gated-at.bofh.it"
  posts="11"
  startdate="06 Apr 2004 21:33:21 -0800"
  enddate="09 Apr 2004 07:37:21 -0800"
>
<topic>FS: autofs</topic>
<topic>Kernel Release Announcement</topic>

<mention>Ian Kent</mention>

<p>Andrew Morton announced 2.6.5-mm2, saying:</p>

<quote who="Andrew Morton">

<p><a
href="ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm2/">ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm2/</a></p>

<p>

<ul>

<li>Merged up Ian Kent's autofs4 patches</li>

<li>Various fixes and speedups.</li>

</ul>

</p>

</quote>

<p>A small thread followed. Jeremy Higdon got a build error on his 64-bit
Intel machine, saying, <quote who="Jeremy Higdon">There have been changes
to setup_arch(), including, apparently, the elimination of the cmdline_p
argument.  Unforunately, that argument was not completely purged from the
function.</quote> He posted a one-liner to fix compilation on his machine,
and Rusty Russell posted a more all-inclusive fix. However, Andrew replied:</p>

<quote who="Andrew Morton">

<p>Guys, these patches have been causing pain for two weeks. They have
thus far required at least twelve bugfixes and I have every expectation
that it will take weeks in Linus's tree to identify and fix all the as-yet
undiscovered bugs. They are taking way too much time which could otherwise
be spent on all the other broken stuff people like to send me.</p>

<p>So I've dropped them all.  They're at <a
href="http://www.zip.com.au/~akpm/linux/patches/early-param/">http://www.zip.com.au/~akpm/linux/patches/early-param/</a>.
That includes this most recent patch of Rusty's.</p>

</quote>

<p>Rusty replied:</p>

<quote who="Rusty Russell">

<p>Yep, that's pretty much what happened last time we tried to fix this,
too.</p>

<p>I'll snarf them and try to break them down into pieces which really can
go in one at a time, and post to lkml for interested people to test...</p>

</quote>

</section>

<section
  title="Exposing ACPI API To User-Space Via SysFS"
  subject="[PATCH] filling in ACPI method access via sysfs namespace"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1INR3-3zo-3%40gated-at.bofh.it"
  posts="12"
  startdate="08 Apr 2004 11:49:02 -0800"
  enddate="11 Apr 2004 20:32:48 -0800"
>
<topic>FS: sysfs</topic>
<topic>Hot-Plugging</topic>
<topic>Ioctls</topic>
<topic>PCI</topic>
<topic>Power Management: ACPI</topic>

<mention>Andy Lutomirski</mention>

<p>Alex Williamson said:</p>

<quote who="Alex Williamson">

<p>Here's a patch that adds object and control method access to devices
in the /sys/firmware/acpi/namespace/ACPI/ tree.  I sent out an RFC on this
approach several days ago and got a couple of good responses.  Since then
I've added a lot more methods, including several control methods to allow
you to do more than simply look at object properties.</p>

<p>There are a lot of potential consumers of this type of data.
For instance:</p>

<p>

<ul>

<li>Laptop users may be able to access some of their 'hotkey' features from
userspace (display switching, eject).</li>

<li>Servers and workstations can associate PCI buses, slots, address spaces,
etc.</li>

<li>Hotplug tools could discover devices dependent on other devices prior
to eject.</li>

<li>Manageability tools could have easy access to device identification and
location methods.</li>

<li>etc...</li>

</ul>

</p>

<p>The code has been tried on several x86 and ia64 systems.  I expanded the
existing sysfs namespace to include devices which the _STA methods do not list
as present at bootup.  This helps to show things like hotplug PCI slots that
aren't currently in use and extra battery bays in laptops that are vacant.
There are several methods that return complex data structures.  I started
trying to parse them into pretty text for output, but the code bloat got too
big too fast.  So, I've left that for userspace tools and just dump the raw
data via this interface.  Most object methods return basic elements and are
easily represented as parsed text.  Also, fair warning: calling _EJ0 methods
on devices may be unsafe.  I've made the files only accessible by root to help
avoid issues in this area.  A couple fun things for laptop users (YMMV):</p>

<p>To eject from a dock (works on an omnibook 500, exact paths will vary):<br />
echo 0 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/ISA0/JP1/_DCK<br />
echo 1 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/ISA0/JP1/_EJ0</p>

When re-docking, do:<br />
echo 1 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/ISA0/JP1/_DCK

<p>To switch displays (X can get in the way and prevent switching):<br />
CRT only -&gt; LCD only:<br />
echo 0 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/AGP/VGA/CRT/_DSS<br />
echo 0x80000001 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/AGP/VGA/LCD/_DSS<br />
LCD only -&gt; LCD+CRT:<br />
echo 0x80000001 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/AGP/VGA/CRT/_DSS<br />
LCD+CRT -&gt; CRT only:<br />
echo 0x80000000 &gt; /sys/firmware/acpi/namespace/ACPI/_SB/PCI0/AGP/VGA/LCD/_DSS</p>

<p>It's highly dependent on how your firmware works as to how complete
the behavior will be.  I've seen a report from an IBM T30 that _EJ0 from
the dock won't trigger the electro-mechanical eject, but seems to do most
everything else.  Bug reports welcomed (but I can't fix your firmware if it
doesn't do what you expect).  Please consider integrating upstream.</p>

</quote>

<p>The next day he posted again, saying, <quote who="Alex Williamson">Here's
another approach that's far less ugly than the last and is much more
powerful.  The code is a little over half the size as a bonus.  Rather than
specifically poking for certain methods and exposing them, this patch
exposes everything.  The down side is that all reading and writing of the
files need to use binary acpi data structures.  This interface certainly
provides "shoot yourself in the foot" potential, but the access to the
namespace from userspace is hard to beat.  Any thoughts on this approach
versus the last?  This interface and a simple set of libraries to go along
with it has a lot of potential.</quote> John Belmonte asked, <quote who="John
Belmonte">The limitation of this interface is that it's not able to call an
ACPI method with some arguments and get the return value, correct?</quote>
Alex confirmed, <quote who="Alex Williamson">Yes, that's unfortunately a
limitation.  Most of the standard interfaces either take no parameters or
have no return value, so they fit nicely into this framework.  I'm open to
suggestions on how to work around this.  We could make the store function
save off the method parameters, then the show function would call the
method with the saved parameters and return the results.  Obviously there
are some userspace ordering issues that could make this complicated, but
it's easy to code on the kernel side.</quote> John gave a pointer to a <a
href="http://sourceforge.net/mailarchive/message.php?msg_id=7455349">mailing
list thread</a> where the issue was discussed, and Alex replied:</p>

<quote who="Alex Williamson">

<p>Ok, I took a look.  The open/write/read/close interface seems to be the
best approach.  It shouldn't be too hard, except the read/write interfaces
don't pass in the attribute pointer like they do for the show/store interface.
Is this a bug?</p>

<p>A nice feature of the current implementation is that I have one show
function that reads the method name out of the attribute structure.  With the
bin_file interface, I'd need to have a different read/write function for
every possible method on a kobject.  I also lose the convenience of being able
extend the container structure to meet my needs.  Am I strecthing the use of
the bin_file too far or should these interfaces pass the attribute pointer?</p>

</quote>

<p>He replied to himself with a patch, saying, <quote who="Alex Williamson">I
made the assumption that this wasn't that big of a stretch to the bin file
interface and extended it to add the arribute pointer.  Below is what I came
up with.  There are luckly only a handful of places using the current sysfs bin
file interface, so the additional changes are pretty small.  I'm guessing I can
probably get rid of the spinlocks I added for the previous implementation,
but they're not hurting anything for now. Am I getting closer?</quote>
Matthew Wilcox replied:</p>

<quote who="Matthew Wilcox">

<p>Yes, definitely closer to my way of thinking ...</p>

<p>It seems unintuitive that you have to read the file for the method to
take effect.  How about having the write function invoke the method and
(if there is a result) store it for later read-back via the read function?
It should be discarded on close, of course.  A read() on a file with no
stored result should invoke the ACPI method (on the assumption this is
a parameter-less method) and return the result directly.  Closing a file
should discard any result from the method.</p>

</quote>

<p>Alex replied, <quote who="Alex Williamson">How's this?  It behaves the way
you described, but might be doing some questionable things with the buffer
to get there.  Is there a better place to store the return data than back
into the buf passed to write() (aka file-&gt;private_data)?  Without adding
callbacks to open/close, I'm not sure how else we can dispose of the results
on close.</quote> Andy Lutomirski asked why not use an ioctl for this,
and Alex replied that according to the thread John gave the pointer to,
and according to Matthew, SysFS did not support ioctls at all.</p>

<p>At this point the thread ended.</p>

</section>

<section
  title="Linux 2.6.5-mm3"
  subject="2.6.5-mm3"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1IVbM-Tz-3%40gated-at.bofh.it"
  posts="4"
  startdate="08 Apr 2004 19:34:51 -0800"
  enddate="09 Apr 2004 10:23:10 -0800"
>
<topic>FS: NFS</topic>
<topic>Kernel Release Announcement</topic>

<p>Andrew Morton announced Linux 2.6.5-mm3, saying:</p>

<quote who="Andrew Morton">

<p><a
href="ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm3/">ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm3/</a></p>

<p>

<ul>

<li>Kernel NFS server update</li>

<li>Added the NUMA memory binding API, minus its hugetlbpage part.</li>

</ul>

</p>

</quote>

<p>There were a couple of bug reports and a success report, but no
discussion.</p>

</section>

<section
  title="Linux Release Candidate 2.6.5-mc4 Released"
  subject="2.6.5-mc4"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1JDmB-2bT-7%40gated-at.bofh.it"
  posts="1"
  startdate="10 Apr 2004 18:53:35 -0800"
>
<topic>FS: ext3</topic>
<topic>SMP</topic>

<p>Andrew Morton announced the Linux 'merge candidate' 2.6.5-mc4, saying:</p>

<quote who="Andrew Morton">

<p><a
href="ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mc4/">ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mc4/</a></p>

<p>This is my patch queue for Linus next week.</p>

<p>

<ul>

<li>Added the ia64 implementation of vectored interrupts</li>

<li>A significant ext3 speedup on big SMP</li>

<li>lots of small fixes.</li>

</ul>

</p>

</quote>

<p>There was no reply.</p>

</section>

<section
  title="Linux 2.6.5-mm4 Released; Problems Unloading hci_usb Module"
  subject="2.6.5-mm4"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1JDFP-2tN-1%40gated-at.bofh.it"
  posts="26"
  startdate="10 Apr 2004 19:05:51 -0800"
  enddate="13 Apr 2004 07:22:46 -0800"
>
<topic>Kernel Release Announcement</topic>
<topic>USB</topic>

<p>Andrew Morton announced Linux 2.6.5-mm4 (the -mm originally came from the
fact that Andrew was working on memory management; it was convenient to keep
the name after taking over 2.6 maintenance). He said:</p>

<quote who="Andrew Morton">

<p><a
href="ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm4/">ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.5/2.6.5-mm4/</a></p>

<p>

<ul>

<li>Added the DRM development tree to -mm kernel.  Please Cc
dri-devel@lists.sourceforge.net on any bug reports.</li>

<li>Mainly small fixes</li>

</ul>

</p>

</quote>

<p>There were various bug reports, including one from Martin Hermanowski,
who said, <quote who="Martin Hermanowski">I get an oops when I try to unload
the hci_usb module.</quote> Greg KH replied, <quote who="Greg KH">I'm
hating that driver right now...  There are a number of pending bluetooth
patches for that driver that fix a number of different bugs, so I'm leary
of trying to see if this is a different one or not at this point in time.
Care to apply all of the bluetooth patches and if this still happens, can
you report it to the linux-usb-devel and bluez-devel mailing lists?</quote>
Marcel Holtmann asked which patches Greg meant, saying, <quote who="Marcel
Holtmann">There is one from Alan in 2.6.5-mh3 that should fix this problem and
I already sent it along with my other fixes (not USB related) to Dave.</quote>
Greg confirmed that that was the patch he'd meant.</p>

</section>

<section
  title="adm8211 802.11b Driver Released For 2.6"
  subject="[ANNOUNCE] adm8211 driver"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1JI2P-5BI-1%40gated-at.bofh.it"
  posts="1"
  startdate="10 Apr 2004 23:47:26 -0800"
>
<topic>BSD: NetBSD</topic>

<mention>Jouni Malinen</mention>

<p>Michael Wu said:</p>

<quote who="Michael Wu">

<p>Here's a driver for the adm8211 802.11b chipset.</p>

<p><a
href="http://aluminum.sourmilk.net/adm8211/adm8211-20040411.tar.bz2">http://aluminum.sourmilk.net/adm8211/adm8211-20040411.tar.bz2</a></p>

<p>It's only for 2.6.x kernels, and it's not quite finished yet. It should
mostly work for infrastructure and monitor modes, but adhoc and WEP don't
work yet.  Should work for the average wireless network though.</p>

<p>Thanks to Jouni Malinen for starting this driver, Jerritt Collord for
telling me about his driver, and David Young for his netbsd driver I used
as a reference.</p>

</quote>

</section>

<section
  title="ketchup Kernel Patching Script Version 0.5 Released"
  subject="[ANNOUNCE] ketchup 0.5 (formerly kpatchup)"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1JIcv-5NS-13%40gated-at.bofh.it"
  posts="2"
  startdate="11 Apr 2004 00:05:15 -0800"
  enddate="11 Apr 2004 09:16:49 -0800"
>

<p>Matt Mackall said, <quote who="Matt Mackall">ketchup is a script that
automatically patches between kernel versions, downloading and caching
patches as needed, and automatically determining the latest versions of
several trees.</quote> He went on:</p>

<quote who="Matt Mackall">

<p>New in this version by popular demand:</p>

<p>

<ul>

<li>name change kpatchup -&gt; ketchup</li>
<li>automatic signature verification</li>
<li>works with older versions of Python</li>

</ul>

</p>

<p>Currently it defaults to trying to use gpg, which means you must have
gpg installed and the appropriate keys in your keyring. You can disable this
with the -g or --no-gpg options.</p>

<p>Available at:</p>

<p><a
href="http://selenic.com/ketchup/ketchup-0.5">http://selenic.com/ketchup/ketchup-0.5</a></p>

</quote>

<p>He offered an example of ketchup's usage:</p>

<pre> $ ketchup 2.6-mm
 2.6.3-rc1-mm1 -&gt; 2.6.5-mm4
 Applying 2.6.3-rc1-mm1.bz2 -R
 Applying patch-2.6.3-rc1.bz2 -R
 Applying patch-2.6.3.bz2
 Applying patch-2.6.4.bz2
 Applying patch-2.6.5.bz2
 Downloading 2.6.5-mm4.bz2
 Downloading 2.6.5-mm4.bz2.sign
 Verifying signature...
 gpg: Signature made Sat Apr 10 21:55:36 2004 CDT using DSA key ID 517D0F0E
 gpg: Good signature from "Linux Kernel Archives Verification Key
 &lt;ftpadmin@kernel.org&gt;"
 gpg:                 aka "Linux Kernel Archives Verification Key
 &lt;ftpadmin@kernel.org&gt;"
 owner.
 gpg: WARNING: This key is not certified with a trusted signature!
 gpg:          There is no indication that the signature belongs to the
 Primary key fingerprint: C75D C40A 11D7 AF88 9981  ED5B C86B A06A 517D 0F0E
 Applying 2.6.5-mm4.bz2</pre>

<p>Zwane Mwaikambo was happy to see this, and asked for an additional feature
of <quote who="Zwane Mwaikambo">support for untarring base trees too so all
you'd specify is ketchup 2.6.6 and it'd look for a base tree in $KETCHUP_ARCH
if the current working directory isn't a kernel tree.</quote></p>

</section>

<section
  title="Status Of Unified 802.11b Stack In 2.6"
  subject="Any plan for inclusion of linux-wlan-ng ?"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1JKHl-7Gy-7%40gated-at.bofh.it"
  posts="5"
  startdate="11 Apr 2004 02:37:03 -0800"
  enddate="12 Apr 2004 20:21:03 -0800"
>
<topic>Advanced Encryption Standard</topic>

<mention>Greg KH</mention>

<p>Gael Le Mignot asked if the <a
href="http://www.linux-wlan.org/">linux-wlan-ng</a> driver would make it
into the 2.6 kernel. Greg KH replied that AbsoluteValue Systems, the author,
had not submitted the code yet for inclusion. Jeff Garzik confirmed that
this was true as far as he knew; but he added:</p>

<quote who="Jeff Garzik">

<p>regardless...</p>

<p>There is a central problem of multiple 802.11 stacks that I very much
want to avoid.  linux-wlan-ng, HostAP, madwifi, and one or two others.</p>

<p>I had hoped that HostAP would be submitted, and that could form the
basis of a common 802.11 stack, but I haven't heard anything about that in
many weeks.</p>

</quote>

<p>And Jouni Malinen replied, <quote who="Jouni Malinen">It will be.. WPA2
distracted me from this preparation, but I will try to get back to cleaning up
the <a href="http://hostap.epitest.fi/">Host AP driver</a> for 2.6. Actually,
I might consider submitting it first without CCMP (AES-counter with CBC-MAC),
because that is the part that is likely to take most time to convert for
crypto API and this can be easily added separately.</quote></p>

</section>

<section
  title="Linux 2.4.26-rc3 Released; Some JFS Compile-Time Warnings"
  subject="Linux 2.4.26-rc3"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1KfrQ-6DK-11%40gated-at.bofh.it"
  posts="2"
  startdate="12 Apr 2004 11:33:13 -0800"
  enddate="13 Apr 2004 01:08:53 -0800"
>
<topic>FS: JFS</topic>
<topic>USB</topic>

<mention>Geert Uytterhoeven</mention>

<p>Marcelo Tosatti announced 2.4.26-rc3, saying, <quote who="Marcelo
Tosatti">It includes few important USB fixes, JFS fixes, amongst
others.</quote> Geert Uytterhoeven reported an ongoing problem, not solved
in 2.4.26-rc3, in which he got warnings of uninitialized variables when
compiling JFS into the kernel, using m68k-linux-gcc 2.95.2 and 3.2. There
was no discussion about it though.</p>

</section>

<section
  title="Adding SysFS Support To The DVB Subsystem"
  subject="Problems adding sysfs support to dvb subsystem"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1KgnW-7pA-29%40gated-at.bofh.it"
  posts="3"
  startdate="12 Apr 2004 12:34:35 -0800"
  enddate="12 Apr 2004 13:42:32 -0800"
>
<topic>Digital Video Broadcasting</topic>
<topic>FS: sysfs</topic>

<mention>Michael Hunold</mention>

<p>As part of the ongoing big push to get everything working with SysFS,
Michael Hunold had been hard at work adding SysFS support to the DVB
Subsystem. However, he wasn't sure he was on the right track. He'd managed
to create a /sys/class/dvb/ directory, but he was having trouble creating
the subdirectories he wanted under that; he asked for some pointers to
documentation. Stephen Hemminger explained, <quote who="Stephen Hemminger">The
sysfs directory layout is a logical representation of the underlying data
structures in the kernel.  Each directory (with exception of attribute groups)
has a 1:1 relation ship with a kobject.</quote> Greg KH added:</p>

<quote who="Greg KH">

<p>you can't create subdirectories directly by just adding a '/' to the
name of the class device, sorry.  You will have to create a kobject for the
directory, and create the attributes in that kobject, like networking did.</p>

<p>Yeah, it's a bit of a pain, but creating subdirectories in an easy manner
is on the TODO list for the driver core for 2.7.</p>

<p>If you want to get up and running quickly, which would not require you
to fix up any lifetime rules for your dvb drivers, you could implement the
class_simple interface, like a lot of other driver subsystems currently are
doing, and then in 2.7 convert over to a proper driver model conversion.
I say this as I am only guessing as to what your lifetime rules are for your
dvb devices and drivers...</p>

</quote>

</section>

<section
  title="BitMover Servers Back Up"
  subject="[BK] status"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1KxI8-4v8-17%40gated-at.bofh.it"
  posts="4"
  startdate="13 Apr 2004 07:04:35 -0800"
  enddate="13 Apr 2004 09:29:46 -0800"
>
<topic>Version Control</topic>

<mention>Sam Ravnborg</mention>

<p>Larry McVoy reported:</p>

<quote who="Larry McVoy">

<p>The various BK machines we host are in at their new location and seem to
have stabilized (famous last words, every time I say something like that
something crashes).  kernel.bkbits.net, which is a shell account machine
for kernel developers, bk users or not, is not up yet, we've had problems
with that machine due to cooling and because we have a much larger machine
room we will be moving the guts of that machine to a higher volume box to
get better cooling.  ETA on that should be today.</p>

<p>We're moving towards remote control of the critical machines.  The machines
are already UPSed but they don't have serial consoles and/or remote power.
I've ordered a Sentry R2000 (model 203-0-1) which is supposed to be a pretty
nice remote power device.  We'll get serial consoles on the machines so
that if they crash we can get the oops message and get some debugging help
(a couple of people, Bill Irwin in particular, went out of their way to offer
to help out with the the debugging.  I mention it only because it was nice
to that kind of friendly offer and I'm grateful).</p>

<p>We are currently on one T1 line, we moved one of the two to the new office
and one is at the old office so we had some overlap in case something went
horribly wrong.  It's clear that one T1 line isn't enough, you've been
keeping that T1 pretty full.  We'll be back up to two in a few weeks.</p>

<p>Other than the up/down problems, have any of you noticed bkbits being slower
since the move (which happened Friday or Saturday, it's sort of a blur)?</p>

<p>Oregon State's open source lab has repeated their offer to take over
hosting bkbits.net and we may take them up on that if we can ever work out
the logistics and you need the bandwidth.</p>

</quote>

<p>Sam Ravnborg reported no problems, although earlier he'd been unable to
pull from linux.bkbits.net. Larry said this had been part of the DNS problems
that were all fixed; and Andy Isaacson added, <quote who="Andy Isaacson">Both
problems due to an internal network error, which should be fixed now.  Thanks
for the report; please let us know if you see any further problems.</quote></p>

</section>

<section
  title="kexec Updates For 2.6.4 And 2.6.5"
  subject="[announce] kexec updates (2.6.4, 2.6.5)"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1KVBh-76X-19%40gated-at.bofh.it"
  posts="1"
  startdate="14 Apr 2004 08:29:49 -0800"
>
<topic>Kexec</topic>

<mention>Randy Dunlap</mention>

<p>Randy Dunlap updated his kexec patch for 2.6.5 and 2.6.5, giving locations
for the <a href="http://developer.osdl.org/rddunlap/kexec/2.6.4/">2.6.4
patches</a> and <a href="http://developer.osdl.org/rddunlap/kexec/2.6.5/">2.6.5
patches</a>. There was no discussion.</p>

</section>

<section
  title="USB Updates For 2.6.5"
  subject="[BK PATCH] USB update for 2.6.5"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1L0AG-2U5-23%40gated-at.bofh.it"
  posts="1"
  startdate="14 Apr 2004 13:51:47 -0800"
>
<topic>USB</topic>
<topic>Version Control</topic>

<p>Greg KH said:</p>

<quote who="Greg KH">

<p>Here are some USB patches for 2.6.5.  Almost all of these have been in the
-mm tree for a number of weeks now (the exceptions being the last 4 patches,
to the speedtouch driver, and a security fix which has been in the WOLK
kernel for a while.)</p>

<p>Here are the main types of changes:</p>

<p>

<ul>

<li>bugfixes.  Lots of these that have been reported numerous times on
lkml.</li>

<li>uhci fixes</li>

<li>gadget driver updates and additions</li>

<li>new device ids</li>

<li>lots of misc small cleanups</li>

</ul>

</p>

<p>Please pull from:  bk://linuxusb.bkbits.net/usb-2.6</p>

<p>Patches will be posted to linux-usb-devel as a follow-up thread for
those who want to see them.</p>

</quote>

</section>

<section
  title="I2C Update For 2.6.5"
  subject="[BK PATCH] I2C update for 2.6.5"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1L29a-4ec-15%40gated-at.bofh.it"
  posts="31"
  startdate="14 Apr 2004 14:22:16 -0800"
  enddate="14 Apr 2004 14:24:14 -0800"
>
<topic>I2C</topic>
<topic>Version Control</topic>

<p>Greg KH posted about 30 patches, and said:</p>

<quote who="Greg KH">

<p>Here are some i2c driver patches 2.6.5.  They have all been in the -mm
kernels for a number of weeks now and do the following:</p>

<p>

<ul>

<li>add a new bus i2c driver</li>
<li>add 2 new chip drivers</li>
<li>updated documentation</li>
<li>lots of bug fixes</li>

</ul>

</p>

<p>Please pull from:  bk://linuxusb.bkbits.net/i2c-2.6</p>

</quote>

</section>

<section
  title="ATP867X PCI IDE Driver Released"
  subject="[PATCH] ATP867X PCI IDE driver"
  archive="http://www.google.com/groups?hl=en&amp;lr=&amp;ie=UTF-8&amp;selm=1L1G8-3Sk-9%40gated-at.bofh.it"
  posts="1"
  startdate="14 Apr 2004 14:46:06 -0800"
>
<topic>Disk Arrays: RAID</topic>
<topic>Disks: IDE</topic>
<topic>PCI</topic>
<topic>SMP</topic>
<topic>Serial ATA</topic>

<p>Eric Uhrhane said:</p>

<quote who="Eric Uhrhane">

<p>This is a new driver for the Acard/Artop PCI ATA/SATA cards
(6885[LP]/6896[S]) based on the ATP867{A,B} chips.  It supports connectivity
only, no fancy ATP867B RAID stuff, for up to 8 drives.  The first version
of this patch [written for 2.4.18] has been tested on about a dozen x86 SMP
machines with several kinds of hard drives, in PIO4 and UDMA5, as well as
in a few other configurations.  This 2.4.26 port has had minimal testing,
but has also had minimal changes from the original.</p>

<p>Acard tell me that they may have seen issues running ATAPI devices using
this driver, but that they can't be sure that they weren't seeing problems
with higher-level software.  I've given it a quick test with my DVD drive,
and didn't see anything obvious.  YMMV.</p>

<p>Feel free to send me comments directly, but I'll also try to check on
the list via archives.  Stay tuned for the 2.6.5 port.</p>

</quote>

</section>

</kc>

