<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="301" date="02 Apr 2005 00:00:00 -0800" />

<mailbox-stats>
	<global-stats>
		<generated-at>Sat Apr  2 11:02:14 2005</generated-at>
		<first-message>2005/02/11 21:10:13</first-message>
		<last-message>2005/02/27 23:56:51</last-message>
		<totals>
			<n-messages>1684</n-messages>
			<total-size>10MB</total-size>
			<avg-size>6KB</avg-size>
			<n-writers>608</n-writers>
			<wrote-more-then-1-message>218</wrote-more-then-1-message>
			<n-lines>161736</n-lines>
			<header-size>90227</header-size>
			<n-user-agents>64</n-user-agents>
			<n-organisations>55</n-organisations>
			<n-toplevel-domains>40</n-toplevel-domains>
		</totals>
		<averages>
			<lines-per-message>96</lines-per-message>
			<lines-per-header>53</lines-per-header>
			<header-percent-of-message>55.79%</header-percent-of-message>
			<header-percent-of-total>43.71%</header-percent-of-total>
			<line-length>2881</line-length>
			<bits-per-byte>4.2510</bits-per-byte>
		</averages>
		<importance>
			<low>0.00%</low>
			<normal>1.25%</normal>
			<high>0.00%</high>
		</importance>

	</global-stats>
	<top-writers>
		<top-writer rank="1">
			<e-mail-addr>Adrian Bunk</e-mail-addr>
			<n-messages>69</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>417KB</total-size>
			<mostly-written-at>10:24</mostly-written-at>
		</top-writer>
		<top-writer rank="2">
			<e-mail-addr>Andrew Morton</e-mail-addr>
			<n-messages>54</n-messages>
			<avg-size>4KB</avg-size>
			<total-size>215KB</total-size>
			<mostly-written-at>13:20</mostly-written-at>
		</top-writer>
		<top-writer rank="3">
			<e-mail-addr>Andreas Gruenbacher</e-mail-addr>
			<n-messages>43</n-messages>
			<avg-size>10KB</avg-size>
			<total-size>408KB</total-size>
			<mostly-written-at>17:40</mostly-written-at>
		</top-writer>
		<top-writer rank="4">
			<e-mail-addr>Greg KH</e-mail-addr>
			<n-messages>41</n-messages>
			<avg-size>4KB</avg-size>
			<total-size>158KB</total-size>
			<mostly-written-at>14:20</mostly-written-at>
		</top-writer>
		<top-writer rank="5">
			<e-mail-addr>jgarzik@pobox.com</e-mail-addr>
			<n-messages>29</n-messages>
			<avg-size>8KB</avg-size>
			<total-size>206KB</total-size>
			<mostly-written-at>13:34</mostly-written-at>
		</top-writer>
	</top-writers>
	<top-subjects>
		<top-subject rank="1">
			<subject>[Lse-tech] Re: A common layer for Accounting packages</subject>
			<n-messages>56</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>290KB</total-size>
			<mostly-written-at>11:21</mostly-written-at>
		</top-subject>
		<top-subject rank="2">
			<subject>2.6.11-rc5</subject>
			<n-messages>38</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>197KB</total-size>
			<mostly-written-at>12:54</mostly-written-at>
		</top-subject>
		<top-subject rank="3">
			<subject>Xterm Hangs - Possible scheduler defect?</subject>
			<n-messages>33</n-messages>
			<avg-size>4KB</avg-size>
			<total-size>130KB</total-size>
			<mostly-written-at>13:38</mostly-written-at>
		</top-subject>
		<top-subject rank="4">
			<subject>[PATCH 2/2] page table iterators</subject>
			<n-messages>32</n-messages>
			<avg-size>8KB</avg-size>
			<total-size>256KB</total-size>
			<mostly-written-at>12:35</mostly-written-at>
		</top-subject>
		<top-subject rank="5">
			<subject>[rfc/rft] Fujitsu B-Series Lifebook PS/2 TouchScreen driver</subject>
			<n-messages>31</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>197KB</total-size>
			<mostly-written-at>14:45</mostly-written-at>
		</top-subject>
	</top-subjects>
	<top-receivers>
		<top-receiver rank="1">
			<e-mail-addr>linux-kernel@vger.kernel.org</e-mail-addr>
			<n-messages>336</n-messages>
			<avg-size>8KB</avg-size>
			<total-size>3MB</total-size>
			<mostly-written-at>14:16</mostly-written-at>
		</top-receiver>
		<top-receiver rank="2">
			<e-mail-addr>Andrew Morton</e-mail-addr>
			<n-messages>178</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>1014KB</total-size>
			<mostly-written-at>11:59</mostly-written-at>
		</top-receiver>
		<top-receiver rank="3">
			<e-mail-addr>Linus Torvalds</e-mail-addr>
			<n-messages>64</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>393KB</total-size>
			<mostly-written-at>13:41</mostly-written-at>
		</top-receiver>
		<top-receiver rank="4">
			<e-mail-addr>Greg KH</e-mail-addr>
			<n-messages>54</n-messages>
			<avg-size>8KB</avg-size>
			<total-size>415KB</total-size>
			<mostly-written-at>12:34</mostly-written-at>
		</top-receiver>
		<top-receiver rank="5">
			<e-mail-addr>jgarzik@pobox.com</e-mail-addr>
			<n-messages>44</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>285KB</total-size>
			<mostly-written-at>14:38</mostly-written-at>
		</top-receiver>
	</top-receivers>
	<top-ccers>
		<top-ccers rank="1">
			<e-mail-addr>Linux Kernel Mailing List</e-mail-addr>
			<n-messages>672</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>4MB</total-size>
			<mostly-written-at>13:43</mostly-written-at>
		</top-ccers>
		<top-ccers rank="2">
			<e-mail-addr>Andrew Morton</e-mail-addr>
			<n-messages>204</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>2MB</total-size>
			<mostly-written-at>13:07</mostly-written-at>
		</top-ccers>
		<top-ccers rank="3">
			<e-mail-addr>Greg KH</e-mail-addr>
			<n-messages>61</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>329KB</total-size>
			<mostly-written-at>13:26</mostly-written-at>
		</top-ccers>
		<top-ccers rank="4">
			<e-mail-addr>Linus Torvalds</e-mail-addr>
			<n-messages>49</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>273KB</total-size>
			<mostly-written-at>13:15</mostly-written-at>
		</top-ccers>
		<top-ccers rank="5">
			<e-mail-addr>Olaf Kirch</e-mail-addr>
			<n-messages>34</n-messages>
			<avg-size>10KB</avg-size>
			<total-size>335KB</total-size>
			<mostly-written-at>17:10</mostly-written-at>
		</top-ccers>
	</top-ccers>
	<top-level-domains>
		<tld rank="1">
			<name>com</name>
			<freq>577</freq>
		</tld>
		<tld rank="2">
			<name>org</name>
			<freq>314</freq>
		</tld>
		<tld rank="3">
			<name>de</name>
			<freq>234</freq>
		</tld>
		<tld rank="4">
			<name>net</name>
			<freq>127</freq>
		</tld>
		<tld rank="5">
			<name>cz</name>
			<freq>67</freq>
		</tld>
	</top-level-domains>
	<top-timezones>
		<tz rank="1">
			<name>+0100</name>
			<freq>594</freq>
		</tz>
		<tz rank="2">
			<name>-0800</name>
			<freq>356</freq>
		</tz>
		<tz rank="3">
			<name>-0500</name>
			<freq>258</freq>
		</tz>
		<tz rank="4">
			<name>+0000</name>
			<freq>120</freq>
		</tz>
		<tz rank="5">
			<name>+1100</name>
			<freq>85</freq>
		</tz>
	</top-timezones>
	<top-organisations>
		<org rank="1">
			<name>OSDL</name>
			<freq>16</freq>
			<bytes>64KB</bytes>
		</org>
		<org rank="2">
			<name>MIPT</name>
			<freq>10</freq>
			<bytes>60KB</bytes>
		</org>
		<org rank="3">
			<name>Grupo PIE</name>
			<freq>9</freq>
			<bytes>41KB</bytes>
		</org>
		<org rank="4">
			<name>SGI</name>
			<freq>8</freq>
			<bytes>39KB</bytes>
		</org>
		<org rank="5">
			<name>Gentoo Linux</name>
			<freq>7</freq>
			<bytes>45KB</bytes>
		</org>
	</top-organisations>
	<top-user-agents>
		<useragent rank="1">
			<name>Mozilla</name>
			<freq>42</freq>
			<bytes>554KB</bytes>
		</useragent>
		<useragent rank="2">
			<name>Mutt/1.5.6+20040907i</name>
			<freq>36</freq>
			<bytes>2MB</bytes>
		</useragent>
		<useragent rank="3">
			<name>Evolution</name>
			<freq>33</freq>
			<bytes>2MB</bytes>
		</useragent>
		<useragent rank="4">
			<name>Mozilla/5.0</name>
			<freq>27</freq>
			<bytes>902KB</bytes>
		</useragent>
		<useragent rank="5">
			<name>KMail/1.7.1</name>
			<freq>16</freq>
			<bytes>736KB</bytes>
		</useragent>
	</top-user-agents>
	<messages-per-day>
		<Sunday><msgs>198</msgs><bytes>2MB</bytes></Sunday>
		<Monday><msgs>275</msgs><bytes>2MB</bytes></Monday>
		<Tuesday><msgs>232</msgs><bytes>2MB</bytes></Tuesday>
		<Wednesday><msgs>285</msgs><bytes>2MB</bytes></Wednesday>
		<Thursday><msgs>302</msgs><bytes>2MB</bytes></Thursday>
		<Friday><msgs>238</msgs><bytes>2MB</bytes></Friday>
		<Saturday><msgs>134</msgs><bytes>693KB</bytes></Saturday>
	</messages-per-day>
	<messages-per-month>
		<Jan><msgs>0</msgs><bytes>0</bytes></Jan>
		<Feb><msgs>1329</msgs><bytes>8MB</bytes></Feb>
		<Mar><msgs>335</msgs><bytes>2MB</bytes></Mar>
		<Apr><msgs>0</msgs><bytes>0</bytes></Apr>
		<May><msgs>0</msgs><bytes>0</bytes></May>
		<Jun><msgs>0</msgs><bytes>0</bytes></Jun>
		<Jul><msgs>0</msgs><bytes>0</bytes></Jul>
		<Aug><msgs>0</msgs><bytes>0</bytes></Aug>
		<Sep><msgs>0</msgs><bytes>0</bytes></Sep>
		<Oct><msgs>0</msgs><bytes>0</bytes></Oct>
		<Nov><msgs>0</msgs><bytes>0</bytes></Nov>
		<Dec><msgs>0</msgs><bytes>0</bytes></Dec>
	</messages-per-month>
	<messages-per-day-of-month>
		<day-1><msgs>163</msgs><bytes>745KB</bytes></day-1>
		<day-2><msgs>156</msgs><bytes>2MB</bytes></day-2>
		<day-3><msgs>16</msgs><bytes>94KB</bytes></day-3>
		<day-4><msgs>0</msgs><bytes>0</bytes></day-4>
		<day-5><msgs>0</msgs><bytes>0</bytes></day-5>
		<day-6><msgs>0</msgs><bytes>0</bytes></day-6>
		<day-7><msgs>0</msgs><bytes>0</bytes></day-7>
		<day-8><msgs>0</msgs><bytes>0</bytes></day-8>
		<day-9><msgs>0</msgs><bytes>0</bytes></day-9>
		<day-10><msgs>0</msgs><bytes>0</bytes></day-10>
		<day-11><msgs>1</msgs><bytes>10KB</bytes></day-11>
		<day-12><msgs>4</msgs><bytes>41KB</bytes></day-12>
		<day-13><msgs>7</msgs><bytes>29KB</bytes></day-13>
		<day-14><msgs>6</msgs><bytes>107KB</bytes></day-14>
		<day-15><msgs>32</msgs><bytes>173KB</bytes></day-15>
		<day-16><msgs>3</msgs><bytes>10KB</bytes></day-16>
		<day-17><msgs>11</msgs><bytes>49KB</bytes></day-17>
		<day-18><msgs>13</msgs><bytes>120KB</bytes></day-18>
		<day-19><msgs>8</msgs><bytes>32KB</bytes></day-19>
		<day-20><msgs>15</msgs><bytes>72KB</bytes></day-20>
		<day-21><msgs>41</msgs><bytes>213KB</bytes></day-21>
		<day-22><msgs>37</msgs><bytes>198KB</bytes></day-22>
		<day-23><msgs>126</msgs><bytes>963KB</bytes></day-23>
		<day-24><msgs>275</msgs><bytes>2MB</bytes></day-24>
		<day-25><msgs>224</msgs><bytes>2MB</bytes></day-25>
		<day-26><msgs>122</msgs><bytes>620KB</bytes></day-26>
		<day-27><msgs>176</msgs><bytes>2MB</bytes></day-27>
		<day-28><msgs>228</msgs><bytes>2MB</bytes></day-28>
		<day-29><msgs>0</msgs><bytes>0</bytes></day-29>
		<day-30><msgs>0</msgs><bytes>0</bytes></day-30>
		<day-31><msgs>0</msgs><bytes>0</bytes></day-31>
	</messages-per-day-of-month>
	<messages-per-hour>
		<hour-1><msgs>86</msgs><bytes>723KB</bytes></hour-1>
		<hour-2><msgs>27</msgs><bytes>182KB</bytes></hour-2>
		<hour-3><msgs>18</msgs><bytes>84KB</bytes></hour-3>
		<hour-4><msgs>5</msgs><bytes>24KB</bytes></hour-4>
		<hour-5><msgs>8</msgs><bytes>37KB</bytes></hour-5>
		<hour-6><msgs>11</msgs><bytes>44KB</bytes></hour-6>
		<hour-7><msgs>28</msgs><bytes>134KB</bytes></hour-7>
		<hour-8><msgs>49</msgs><bytes>232KB</bytes></hour-8>
		<hour-9><msgs>84</msgs><bytes>443KB</bytes></hour-9>
		<hour-10><msgs>78</msgs><bytes>419KB</bytes></hour-10>
		<hour-11><msgs>84</msgs><bytes>400KB</bytes></hour-11>
		<hour-12><msgs>71</msgs><bytes>402KB</bytes></hour-12>
		<hour-13><msgs>97</msgs><bytes>649KB</bytes></hour-13>
		<hour-14><msgs>110</msgs><bytes>755KB</bytes></hour-14>
		<hour-15><msgs>142</msgs><bytes>726KB</bytes></hour-15>
		<hour-16><msgs>113</msgs><bytes>813KB</bytes></hour-16>
		<hour-17><msgs>113</msgs><bytes>548KB</bytes></hour-17>
		<hour-18><msgs>97</msgs><bytes>605KB</bytes></hour-18>
		<hour-19><msgs>75</msgs><bytes>346KB</bytes></hour-19>
		<hour-20><msgs>67</msgs><bytes>299KB</bytes></hour-20>
		<hour-21><msgs>81</msgs><bytes>423KB</bytes></hour-21>
		<hour-22><msgs>77</msgs><bytes>340KB</bytes></hour-22>
		<hour-23><msgs>78</msgs><bytes>409KB</bytes></hour-23>
	</messages-per-hour>
	<created-with><name>mboxstats</name><version>2.2</version><developer>folkert@vanheusden.com</developer><url>http://www.vanheusden.com/mboxstats/</url></created-with>
</mailbox-stats>

<section
  title="Support For Fujitsu LifeBook PS/2 Touchscreen Hardware"
  subject="[rfc/rft] Fujitsu B-Series Lifebook PS/2 TouchScreen driver"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/32baf99d2d96baf5"
  posts="31"
  startdate="11 Feb 2005 12:10:13 -0800"
  enddate="01 Mar 2005 04:08:39 -0800"
>
<topic>Touchscreen</topic>

<mention>Arjan van de Ven</mention>

<p>Vojtech Pavlik said:</p>

<quote who="Vojtech Pavlik">

<p>I've reimplemented the Lifebook touchscreen driver using libps2 and input,
to make it short and fitting into the kernel drivers.</p>

<p>Please comment on code and test for functionality!</p>

<p>PS.: The driver should register two input devices. It doesn't yet, since
that isn't very straightforward in the psmouse framework.</p>

</quote>

<p>Kenan Esau was really happy to see this support being worked on, though
he had a lot of technical criticisms of the patch. One of his objections was
that there was no way to be certain a LifeBook touchscreen was present on
the system.  Arjan van de Ven had a hard time swallowing this, and suggested
ways of detecting LifeBooks. But Kenan replied, <quote who="Kenan Esau">the
lifebook-touchscreen hardware is also used in other notebooks. For example
the Panasonic Toughbook CF28. But we could still use DMI to check whether we
are on a lifebook b-series and then initialize the hardware. This would still
get 95% of all cases.  For all the other ones we would have to provide some
kind of force-switch.</quote> Vojtech added, <quote who="Vojtech Pavlik">Or
simply another entry in the DMI table for the Toughbook, and for the few
others who use this kind of touchscreen controller.</quote></p>

<p>Later on, Kenan posted his own updated version of the patch, including
DMI probing. Vojtech, digging down into the code, found a lot of specific
problems, though he had no general objections to Kenan's direction.</p>

</section>

<section
  title="Bootsplash For 2.6.11-rc4"
  subject="Bootsplash for 2.6.11-rc4"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/0dab717758778b0f"
  posts="20"
  startdate="18 Feb 2005 08:52:54 -0800"
  enddate="01 Mar 2005 15:32:28 -0800"
>
<topic>Bootsplash</topic>

<mention>Greg KH</mention>

<p>Pavel Machek said, <quote who="Pavel Machek">Just in case someone is
interested, this is bootsplash for 2.6.11-rc4, taken from suse kernel. I'll
probably try to modify it to work with radeonfb.  Any ideas why bootsplash
needs to hack into vesafb? It only uses vesafb_ops to test against them
before some kind of free...</quote> Michal Januszewski replied:</p>

<quote who="Michal Januszewski">

<p>It doesn't really need vesafb for anything. Back in the days of 2.6.7
I used to release a version of bootsplash that had the dep. on vesafb
removed. It worked fine with at least some other fb drivers.</p>

<p>You might also want to save yourself some
work and try out an alternative solution called <a
href="http://dev.gentoo.org/~spock/projects/gensplash/current/">fbsplash</a>,
which I designed after I got tired of fixing bootsplash and which I actively
maintain. Fbsplash provides virtually the same functionality, and it has
as much code as possible moved into userspace (no more JPEG decoders in
the kernel).</p>

</quote>

<p>Greg KH agreed with Michal, saying that his version was very sane, stable,
and possibly even ready to be merged. Pavel agreed entirely, adding, <quote
who="Pavel Machek">My only requirement is that it works with radeonfb and
similar low-level drivers (so that I can get suspend-to-ram to work) and that
it gets past our branding people...</quote> Michal replied, <quote who="Michal
Januszewski">I don't know about the branding people, but suspend-to-ram and
radeonfb shouldn't be a problem for fbsplash :)</quote></p>

</section>

<section
  title="Failed Attempt To Restructure /sys"
  subject="[PATCH] Symlink /sys/class/block to /sys/block"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/964775ff5ee000d9"
  posts="9"
  startdate="19 Feb 2005 15:29:13 -0800"
  enddate="25 Feb 2005 15:58:39 -0800"
>
<topic>FS: sysfs</topic>
<topic>Hot-Plugging</topic>

<p>In response to an <a
href="http://marc.theaimsgroup.com/?m=110506536315986">earlier discussion</a>,
Malcolm Rowe posted a patch to create /sys/class/block as a symlink to
/sys/block. Chris Wedgwood replied, <quote who="Chris Wedgwood">Shouldn't
we really move /sys/block to /sys/class/block and put the symlink from
there to /sys/block with the hope of removing it one day?</quote> Greg KH
replied, <quote who="Greg KH">When struct class_device can support children,
we can do just that.  But that support has not been added, yet...</quote>
Kay Sievers pointed out elsewhere, that <quote who="Kay Sievers">The hotplug
events will still have the /block/* devpath, so this symlink will give us
nothing than problems.</quote> After some back-and-forth, Greg admitted,
<quote who="Greg KH">Ok, forget the symlink.  Or, for that matter, ever
moving from /sys/block/...</quote></p>

</section>

<section
  title="Linux 2.6.11-rc5 Released"
  subject="2.6.11-rc5"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/648c1bc0cfefe0b0"
  posts="53"
  startdate="23 Feb 2005 20:18:08 -0800"
  enddate="01 Mar 2005 14:01:08 -0800"
>
<topic>Kernel Release Announcement</topic>
<topic>Serial ATA</topic>

<p>Linus Torvalds announced Linux 2.6.11-rc5, saying:</p>

<quote who="Linus Torvalds">

<p>Hey, I hoped -rc4 was the last one, but we had some laptop resource
conflicts, various ppc TLB flush issues, some possible stack overflows in
networking and a number of other details warranting a quick -rc5 before the
final 2.6.11.</p>

<p>This time it's really supposed to be a quickie, so people who can, please
check it out, and we'll make the real 2.6.11 asap.</p>

<p>Mostly pretty small changes (the largest is a new SATA driver that crept
in, our bad). But worth another quick round.</p>

</quote>

</section>

<section
  title="PCI Bridge Driver Rewrite"
  subject="[RFC] PCI bridge driver rewrite"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/01649a7e3ff2c86e"
  posts="14"
  startdate="23 Feb 2005 22:22:01 -0800"
  enddate="28 Feb 2005 16:34:04 -0800"
>
<topic>FS: sysfs</topic>
<topic>Hot-Plugging</topic>
<topic>PCI</topic>

<p>Adam Belay said:</p>

<quote who="Adam Belay">

<p>For the past couple weeks I have been reorganizing the PCI subsystem to
better utilize the driver model.  Specifically, the bus detection code
is now using a standard PCI driver.  It turns out to be a major
undertaking, as the PCI probing code is closely tied into a lot of other
PCI components, and is spread throughout various architecture specific
areas.  I'm hoping that these changes will allow for a much cleaner and
more functional PCI implementation.</p>

<p>The basic flow of the new code is as follows:</p>

<p>

<ol>

<li>A standard "driver core" driver binds to a bridge device.</li>
<li>When "*probe" is called it sets up the hardware and allocates a "struct pci_bus".</li>
<li>The "struct pci_bus" is filled with information about the detected
bridge.</li>
<li>The driver then registers the "struct pci_bus" with the PCI Bus Class.</li>
<li>The PCI Bus Class makes the bridge available to sysfs.</li>
<li>It then detects hardware attached to the bridge.</li>
<li>Each new PCI bridge device is registered with the driver model.</li>
<li>All remaining PCI devices are registered with the driver model.</li>

</ol>

</p>

<p>Steps 7 and 8 allow for better resource management.</p>

<p>I've attached an early version of my code.  It has most of the new PCI
bus class registration code in place, and an early implementation of the
PCI-to-PCI bridge driver.  The following remains to be done:</p>

<p>

<ol>

<li>refine and cleanup the new PCI Bus API</li>
<li>export the new API in "linux/pci.h", and cleanup any users of the old
code.</li>
<li>fix every PCI hotplug driver.</li>
<li>write a bridge driver for the PCI root bridge</li>
<li>write a bridge driver for Cardbus hardware</li>
<li>refine device registration order</li>
<li>redesign PCI bus number assignment and support bus renumbering</li>
<li>redesign PCI resource management to be compatible with the new code</li>
<li>testing on various architectures</li>
<li>Write "*suspend" and "*resume" routines for PCI bridges.  Any ideas on what needs to be done?</li>
<li>fix "PCI_LEGACY" (I may have broke it, but it should be trivial)</li>

</ol>

</p>

</quote>

<p>There were various comments and suggestions, but Greg KH also said,
<quote who="Greg KH">I like it all :). If you want to submit patches now
that rearrange the code to make it easier for you to modify in the future to
achieve the above goals, feel free, I'll gladly take them.</quote> And Adam
replied, <quote who="Adam Belay">I'm going to do an updated release soon.
It should take care of some of the issues on the TODO list and also will be
based on previous feedback.  From there, I'll start planning a strategy for
merging with mainline.</quote></p>

</section>

<section
  title="Seeking Kernel Policy Documentation"
  subject="Linus' decrees?"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/cbcfa907ec43453c"
  posts="12"
  startdate="24 Feb 2005 12:03:20 -0800"
  enddate="25 Feb 2005 15:56:46 -0800"
>

<mention>Randy Dunlap</mention>
<mention>Horst von Brand</mention>

<p>Stuart MacDonald said:</p>

<quote who="Stuart MacDonald">

<p>Recently I ran across <a
href="http://groups.google.ca/groups?hl=en&amp;lr=lang_en&amp;safe=off&amp;selm=1033074519.2698.5.camel%40localhost.localdomain">http://groups.google.ca/groups?hl=en&amp;lr=lang_en&amp;safe=off&amp;selm=1033074519.2698.5.camel%40localhost.localdomain</a></p>

<p>Is there a collection point for Linus' decrees?</p>

<p>The LSB (<a href="http://www.linuxbase.org/">http://www.linuxbase.org/</a>)
seems to be mostly involved with how a distro is laid out, and not much to
do with the kernel.</p>

</quote>

<p>Some posts down the line, Randy Dunlap said he didn't know of anyplace that
collected kernel policies, though he liked the idea. Horst von Brand proposed
a Documentation/policies file, and Stuart said that would be great.</p>

</section>

<section
  title="Merging The Xen Code"
  subject="Re: arch/xen is a bad idea"
  archive="http://groups-beta.google.com/group/linux.kernel/msg/9f84a77b73ef799f"
  posts="6"
  startdate="25 Feb 2005 03:43:16 -0800"
  enddate="26 Feb 2005 12:41:48 -0800"
>

<mention>Andi Kleen</mention>

<p>Andrew Morton said:</p>

<quote who="Andrew Morton">

<p>The Xen team still believe that it's best to keep arch/xen, arch/xen/i386,
arch/xen/x86_64, etc.  And I believe that Andi (who is the world expert
on maintaining an i386 derivative) thinks that this is will be a long-term
maintenance problem.</p>

<p>I tend to agree with Andi, and I'm not sure that the Xen team
fully appreciate the downside of haveing an own-architecture in the
kernel.org kernel and the upside of having their code integrated with the
most-maintained architecture.  It could be that the potential problems
haven't been sufficiently well communicated.</p>

<p>Christian has mentioned that Xen would need to hook into the i386 code
in ~60 places, which is somewhat more than Ian's 37-bullet-point list.</p>

<p>I get the impression that the Xen team are overly reluctant to make changes
to the arch/i386 code and to arch-neutral kernel code.  Don't do that - new
abstractions, refactoring and generally moving things about is generally a
safe thing to do, and can often make things better anyway.</p>

<p>So.  Has anyone changed position or otherwise converged?  How do we get
this resolved?</p>

</quote>

<p>Ian Pratt replied:</p>

<quote who="Ian Pratt">

<p>I think there's an interim compromise position that everyone might
go for:</p>

<p>Phase 1 is for us to submit a load of patches that squeeze out the low
hanging fruit in unifying xen/i386 and i386. Most of these will be strict
cleanups to i386, and the result will be to almost halve the number of files
that we need to modify.</p>

<p>The next phase is that we re-organise the current arch/xen as follows:</p>

<p>We move the remaining (reduced) contents of arch/xen/i386 to arch/i386/xen
(ditto for x86_64). We then move the xen-specific files that are shared
between all the different xen architectures to drivers/xen/core. I know this
last step is a bit odd, but it's the best location that Rusty Russel and I
could come up with.</p>

<p>At this point, I'd hope that we could get xen into the main-line tree.</p>

<p>The final phase is to see if we can further unify more native and xen
files. This is going to require some significant i386 code refactoring,
and I think its going to be much easier to do if all the code is in the
main-line tree so that people can see the motivation for what's going on.</p>

</quote>

<p>Andi Kleen seemed favorable, though he still had some questions to
resolve. Andrew also liked the compromise, and also had questions to resolve.
But he said, <quote who="Andrew Morton">The main objective is to minimise
code duplication.  The question of where in the tree all the resulting code
actually lands is secondary from a maintainability POV.</quote></p>

</section>

<section
  title="Partition Recognition"
  subject="[PATCH] partitions/msdos.c"
  archive="http://groups-beta.google.com/group/fa.linux.kernel/msg/65b8526816a74377"
  posts="16"
  startdate="26 Feb 2005 13:35:00 -0800"
  enddate="28 Feb 2005 22:53:36 -0800"
>
<topic>FS: ReiserFS</topic>
<topic>Hot-Plugging</topic>
<topic>USB</topic>

<p>Andries Brouwer said:</p>

<quote who="Andries Brouwer">

<p>A well-known kernel bug is that it guesses at the partition type and
the partitions on any disk it encounters. This is bad because needless I/O
is done, slowing down the boot, sometimes quite a lot, especially when I/O
errors occur. And it is bad because sometimes we guess wrong.</p>

<p>In other words, we need the user space command `partition', where
"partition&#160;-t&#160;dos&#160;/dev/sda" reads a DOS-type partition
table. (And "partition /dev/sda" tries all known heuristics to decide what
type of partitioning might be present.)  The two variants are: (i) partition
tells the kernel to do the partition table reading, and (ii) partition uses
partx to read the partition table and tells the kernel one-by-one about the
partitions found this way.</p>

<p>Since this is a fundamental change, a long transition period is needed,
and that period could start with a kernel boot parameter telling the kernel
not to do partition table parsing on a particular disk, or a particular type
of disks, or all disks.</p>

<p>This could have been the intro to a patch doing that, but is not.
(It is just an RFC.)</p>

<p>The tiny patch below prompted the above - it was suggested by Uwe Bonnes who
encountered USB devices without partition table where our present heuristics
did not suffice to stop partition table parsing.  It causes the kernel to
ignore partitions of type 0. A band-aid.</p>

<p>I think nobody uses such partitions seriously, but nevertheless this
should probably live in -mm for a while to see if anybody complains.</p>

</quote>

<p>Linus Torvalds got behind the patch, and after some discussion said, <quote
who="Linus Torvalds">I'll put it in immediately after doing a 2.6.11 (no
need to worry about getting into 2.6.11, since afaik the worst problem right
now is an extra partition that isn't usable).</quote> Uwe Bonnes remarked,
<quote who="Uwe Bonnes">Well, on a Suse 9.2 System with Suse Hotplug, the
phantom partition was somehow recognized as Reiserfs, and then the Hotplug
mechanism trying to mount the bogus partition as a Reiser Filesystem ended
in an Oops...</quote> Linus acknowledged that this was a significant case,
though he felt it indicated that <quote who="Linus Torvalds">reiserfs is not
doing very well on the sanity-checking front.</quote> He and Andries urged
folks to report all oopses.</p>

</section>

</kc>

