<?xml version="1.0" ?>

<kc>

<title>Kernel Traffic</title>

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

<issue num="331" date="10 Oct 2005 00:00:00 -0800" />

<mailbox-stats>
	<global-stats>
		<generated-at>Sat Oct  8 07:58:16 2005</generated-at>
		<first-message>Thu Dec 30 02:39:28 2004</first-message>
		<last-message>Fri Oct  7 16:33:25 2005</last-message>
		<totals>
			<n-messages>2477</n-messages>
			<n-is-reply>1958</n-is-reply>
			<avg-resp-time>21:25:12</avg-resp-time>
			<n-pgp-signed>97</n-pgp-signed>
			<total-size>14MB</total-size>
			<avg-size>6KB</avg-size>
			<n-attachments>43</n-attachments>
			<att-size>397KB</att-size>
			<bussiest-day-in-n day="2005-09-29"><n-msgs>369</n-msgs><n-bytes>3MB</n-bytes></bussiest-day-in-n>
			<bussiest-day-in-bytes day="2005-09-29"><n-msgs>369</n-msgs><n-bytes>3MB</n-bytes></bussiest-day-in-bytes>
			<n-writers>769</n-writers>
			<wrote-more-then-1-message>303</wrote-more-then-1-message>
			<n-lines>242390</n-lines>
			<header-size>136341</header-size>
			<n-user-agents>70</n-user-agents>
			<n-organisations>59</n-organisations>
			<n-toplevel-domains>46</n-toplevel-domains>
			<avg-spam-score>-13.715462</avg-spam-score>
				<spammiest-writer><score>4.200000</score><name>oscar&#32;flowers</name></spammiest-writer>
		</totals>
		<averages>
			<lines-per-message>97</lines-per-message>
			<lines-per-header>55</lines-per-header>
			<header-percent-of-message>56.25%</header-percent-of-message>
			<header-percent-of-total>45.66%</header-percent-of-total>
			<line-length>30</line-length>
		</averages>
		<importance>
			<low>0.00%</low>
			<normal>0.28%</normal>
			<high>0.00%</high>
		</importance>

	</global-stats>
	<top-writers>
		<top-writer rank="1">
			<e-mail-addr>jeff&#32;garzik</e-mail-addr>
			<n-messages>57</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>258KB</total-size>
			<mostly-written-at>14:19</mostly-written-at>
		</top-writer>
		<top-writer rank="2">
			<e-mail-addr>luben&#32;tuikov</e-mail-addr>
			<n-messages>52</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>288KB</total-size>
			<mostly-written-at>13:30</mostly-written-at>
		</top-writer>
		<top-writer rank="3">
			<e-mail-addr>linus&#32;torvalds</e-mail-addr>
			<n-messages>48</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>208KB</total-size>
			<mostly-written-at>11:56</mostly-written-at>
		</top-writer>
		<top-writer rank="4">
			<e-mail-addr>andrew&#32;morton</e-mail-addr>
			<n-messages>43</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>263KB</total-size>
			<mostly-written-at>14:39</mostly-written-at>
		</top-writer>
		<top-writer rank="5">
			<e-mail-addr>paul&#32;jackson</e-mail-addr>
			<n-messages>43</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>182KB</total-size>
			<mostly-written-at>11:13</mostly-written-at>
		</top-writer>
	</top-writers>
	<top-subjects>
		<top-subject rank="1">
			<subject>i&#32;request&#32;inclusion&#32;of&#32;reiser4&#32;in&#32;the&#32;mainline&#32;kernel</subject>
			<n-messages>138</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>586KB</total-size>
			<mostly-written-at>14:17</mostly-written-at>
			<first-msg>1126893908</first-msg>
			<last-msg>1128484848</last-msg>
		</top-subject>
		<top-subject rank="2">
			<subject>i&#32;request&#32;inclusion&#32;of&#32;sas&#32;transport&#32;layer&#32;and&#32;aic-94xx&#32;into</subject>
			<n-messages>130</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>667KB</total-size>
			<mostly-written-at>14:46</mostly-written-at>
			<first-msg>1127847180</first-msg>
			<last-msg>1128470104</last-msg>
		</top-subject>
		<top-subject rank="3">
			<subject>2.6.13-mm2</subject>
			<n-messages>59</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>289KB</total-size>
			<mostly-written-at>13:11</mostly-written-at>
			<first-msg>1126186242</first-msg>
			<last-msg>1128010923</last-msg>
		</top-subject>
		<top-subject rank="4">
			<subject>2.6.14-rc1-git-now&#32;still&#32;dying&#32;in&#32;mm/slab&#32;-&#32;this&#32;time&#32;line&#32;1849</subject>
			<n-messages>43</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>276KB</total-size>
			<mostly-written-at>14:15</mostly-written-at>
			<first-msg>1126839107</first-msg>
			<last-msg>1128147075</last-msg>
		</top-subject>
		<top-subject rank="5">
			<subject>freebox&#32;possible&#32;gpl&#32;violation</subject>
			<n-messages>42</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>175KB</total-size>
			<mostly-written-at>13:32</mostly-written-at>
			<first-msg>1128527102</first-msg>
			<last-msg>1128677167</last-msg>
		</top-subject>
	</top-subjects>
	<top-receivers>
		<top-receiver rank="1">
			<e-mail-addr>linux-kernel@vger.kernel.org</e-mail-addr>
			<n-messages>398</n-messages>
			<avg-size>9KB</avg-size>
			<total-size>4MB</total-size>
			<mostly-written-at>14:01</mostly-written-at>
		</top-receiver>
		<top-receiver rank="2">
			<e-mail-addr>andrew&#32;morton</e-mail-addr>
			<n-messages>167</n-messages>
			<avg-size>8KB</avg-size>
			<total-size>2MB</total-size>
			<mostly-written-at>14:43</mostly-written-at>
		</top-receiver>
		<top-receiver rank="3">
			<e-mail-addr>torvalds@osdl.org</e-mail-addr>
			<n-messages>129</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>687KB</total-size>
			<mostly-written-at>13:28</mostly-written-at>
		</top-receiver>
		<top-receiver rank="4">
			<e-mail-addr>luben&#32;tuikov</e-mail-addr>
			<n-messages>58</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>285KB</total-size>
			<mostly-written-at>14:44</mostly-written-at>
		</top-receiver>
		<top-receiver rank="5">
			<e-mail-addr>jeff&#32;garzik</e-mail-addr>
			<n-messages>54</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>360KB</total-size>
			<mostly-written-at>12:43</mostly-written-at>
		</top-receiver>
	</top-receivers>
	<top-ccers>
		<top-ccers rank="1">
			<e-mail-addr>linux-kernel@vger.kernel.org</e-mail-addr>
			<n-messages>999</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>6MB</total-size>
			<mostly-written-at>13:36</mostly-written-at>
		</top-ccers>
		<top-ccers rank="2">
			<e-mail-addr>andrew&#32;morton</e-mail-addr>
			<n-messages>275</n-messages>
			<avg-size>7KB</avg-size>
			<total-size>2MB</total-size>
			<mostly-written-at>13:19</mostly-written-at>
		</top-ccers>
		<top-ccers rank="3">
			<e-mail-addr>torvalds@osdl.org</e-mail-addr>
			<n-messages>102</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>485KB</total-size>
			<mostly-written-at>13:21</mostly-written-at>
		</top-ccers>
		<top-ccers rank="4">
			<e-mail-addr>jeff&#32;garzik</e-mail-addr>
			<n-messages>94</n-messages>
			<avg-size>6KB</avg-size>
			<total-size>542KB</total-size>
			<mostly-written-at>13:11</mostly-written-at>
		</top-ccers>
		<top-ccers rank="5">
			<e-mail-addr>linux-mm@kvack.org</e-mail-addr>
			<n-messages>72</n-messages>
			<avg-size>5KB</avg-size>
			<total-size>349KB</total-size>
			<mostly-written-at>14:58</mostly-written-at>
		</top-ccers>
	</top-ccers>
	<top-level-domains>
		<tld rank="1">
			<name>com</name>
			<freq>1134</freq>
			<avg-size>7KB</avg-size>
			<total-size>7MB</total-size>
		</tld>
		<tld rank="2">
			<name>org</name>
			<freq>398</freq>
			<avg-size>6KB</avg-size>
			<total-size>2MB</total-size>
		</tld>
		<tld rank="3">
			<name>net</name>
			<freq>163</freq>
			<avg-size>7KB</avg-size>
			<total-size>980KB</total-size>
		</tld>
		<tld rank="4">
			<name>de</name>
			<freq>156</freq>
			<avg-size>6KB</avg-size>
			<total-size>839KB</total-size>
		</tld>
		<tld rank="5">
			<name>uk</name>
			<freq>113</freq>
			<avg-size>5KB</avg-size>
			<total-size>532KB</total-size>
		</tld>
	</top-level-domains>
	<top-timezones>
		<tz rank="1">
			<name>-0700</name>
			<freq>676</freq>
			<avg-size>6KB</avg-size>
			<total-size>4MB</total-size>
		</tz>
		<tz rank="2">
			<name>+0200</name>
			<freq>633</freq>
			<avg-size>6KB</avg-size>
			<total-size>4MB</total-size>
		</tz>
		<tz rank="3">
			<name>-0400</name>
			<freq>372</freq>
			<avg-size>6KB</avg-size>
			<total-size>3MB</total-size>
		</tz>
		<tz rank="4">
			<name>+0100</name>
			<freq>244</freq>
			<avg-size>6KB</avg-size>
			<total-size>2MB</total-size>
		</tz>
		<tz rank="5">
			<name>+1000</name>
			<freq>92</freq>
			<avg-size>7KB</avg-size>
			<total-size>640KB</total-size>
		</tz>
	</top-timezones>
	<top-organisations>
		<org rank="1">
			<name>sgi</name>
			<freq>37</freq>
			<bytes>152KB</bytes>
		</org>
		<org rank="2">
			<name>plexity&#32;networks</name>
			<freq>25</freq>
			<bytes>168KB</bytes>
		</org>
		<org rank="3">
			<name>http://bugsplatter.mine.nu/</name>
			<freq>13</freq>
			<bytes>133KB</bytes>
		</org>
		<org rank="4">
			<name>cyclades</name>
			<freq>12</freq>
			<bytes>60KB</bytes>
		</org>
		<org rank="5">
			<name>intel</name>
			<freq>12</freq>
			<bytes>55KB</bytes>
		</org>
	</top-organisations>
	<top-user-agents>
		<useragent rank="1">
			<name>mozilla</name>
			<freq>57</freq>
			<bytes>2MB</bytes>
		</useragent>
		<useragent rank="2">
			<name>evolution</name>
			<freq>44</freq>
			<bytes>2MB</bytes>
		</useragent>
		<useragent rank="3">
			<name>mutt/1.5.9i</name>
			<freq>33</freq>
			<bytes>737KB</bytes>
		</useragent>
		<useragent rank="4">
			<name>mozilla/5.0</name>
			<freq>29</freq>
			<bytes>931KB</bytes>
		</useragent>
		<useragent rank="5">
			<name>mutt/1.4.1i</name>
			<freq>20</freq>
			<bytes>610KB</bytes>
		</useragent>
	</top-user-agents>
	<messages-per-day>
		<Sunday><msgs>194</msgs><bytes>2MB</bytes></Sunday>
		<Monday><msgs>389</msgs><bytes>3MB</bytes></Monday>
		<Tuesday><msgs>384</msgs><bytes>3MB</bytes></Tuesday>
		<Wednesday><msgs>402</msgs><bytes>3MB</bytes></Wednesday>
		<Thursday><msgs>582</msgs><bytes>4MB</bytes></Thursday>
		<Friday><msgs>362</msgs><bytes>3MB</bytes></Friday>
		<Saturday><msgs>152</msgs><bytes>856KB</bytes></Saturday>
	</messages-per-day>
	<messages-per-month>
		<Jan><msgs>0</msgs><bytes>0</bytes></Jan>
		<Feb><msgs>0</msgs><bytes>0</bytes></Feb>
		<Mar><msgs>0</msgs><bytes>0</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>1320</msgs><bytes>8MB</bytes></Sep>
		<Oct><msgs>1144</msgs><bytes>7MB</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>105</msgs><bytes>639KB</bytes></day-1>
		<day-2><msgs>117</msgs><bytes>615KB</bytes></day-2>
		<day-3><msgs>283</msgs><bytes>2MB</bytes></day-3>
		<day-4><msgs>230</msgs><bytes>2MB</bytes></day-4>
		<day-5><msgs>223</msgs><bytes>2MB</bytes></day-5>
		<day-6><msgs>167</msgs><bytes>2MB</bytes></day-6>
		<day-7><msgs>19</msgs><bytes>71KB</bytes></day-7>
		<day-8><msgs>10</msgs><bytes>107KB</bytes></day-8>
		<day-9><msgs>10</msgs><bytes>89KB</bytes></day-9>
		<day-10><msgs>9</msgs><bytes>41KB</bytes></day-10>
		<day-11><msgs>13</msgs><bytes>52KB</bytes></day-11>
		<day-12><msgs>12</msgs><bytes>58KB</bytes></day-12>
		<day-13><msgs>0</msgs><bytes>0</bytes></day-13>
		<day-14><msgs>0</msgs><bytes>0</bytes></day-14>
		<day-15><msgs>2</msgs><bytes>15KB</bytes></day-15>
		<day-16><msgs>8</msgs><bytes>36KB</bytes></day-16>
		<day-17><msgs>8</msgs><bytes>27KB</bytes></day-17>
		<day-18><msgs>28</msgs><bytes>132KB</bytes></day-18>
		<day-19><msgs>34</msgs><bytes>159KB</bytes></day-19>
		<day-20><msgs>56</msgs><bytes>245KB</bytes></day-20>
		<day-21><msgs>37</msgs><bytes>192KB</bytes></day-21>
		<day-22><msgs>34</msgs><bytes>215KB</bytes></day-22>
		<day-23><msgs>39</msgs><bytes>203KB</bytes></day-23>
		<day-24><msgs>30</msgs><bytes>150KB</bytes></day-24>
		<day-25><msgs>36</msgs><bytes>307KB</bytes></day-25>
		<day-26><msgs>60</msgs><bytes>463KB</bytes></day-26>
		<day-27><msgs>98</msgs><bytes>456KB</bytes></day-27>
		<day-28><msgs>142</msgs><bytes>815KB</bytes></day-28>
		<day-29><msgs>369</msgs><bytes>3MB</bytes></day-29>
		<day-30><msgs>286</msgs><bytes>2MB</bytes></day-30>
		<day-31><msgs>0</msgs><bytes>0</bytes></day-31>
	</messages-per-day-of-month>
	<messages-per-hour>
		<hour-1><msgs>71</msgs><bytes>448KB</bytes></hour-1>
		<hour-2><msgs>36</msgs><bytes>167KB</bytes></hour-2>
		<hour-3><msgs>23</msgs><bytes>124KB</bytes></hour-3>
		<hour-4><msgs>24</msgs><bytes>136KB</bytes></hour-4>
		<hour-5><msgs>27</msgs><bytes>172KB</bytes></hour-5>
		<hour-6><msgs>22</msgs><bytes>103KB</bytes></hour-6>
		<hour-7><msgs>53</msgs><bytes>265KB</bytes></hour-7>
		<hour-8><msgs>109</msgs><bytes>473KB</bytes></hour-8>
		<hour-9><msgs>144</msgs><bytes>714KB</bytes></hour-9>
		<hour-10><msgs>153</msgs><bytes>891KB</bytes></hour-10>
		<hour-11><msgs>145</msgs><bytes>815KB</bytes></hour-11>
		<hour-12><msgs>139</msgs><bytes>795KB</bytes></hour-12>
		<hour-13><msgs>126</msgs><bytes>721KB</bytes></hour-13>
		<hour-14><msgs>173</msgs><bytes>932KB</bytes></hour-14>
		<hour-15><msgs>165</msgs><bytes>1021KB</bytes></hour-15>
		<hour-16><msgs>147</msgs><bytes>792KB</bytes></hour-16>
		<hour-17><msgs>176</msgs><bytes>2MB</bytes></hour-17>
		<hour-18><msgs>147</msgs><bytes>969KB</bytes></hour-18>
		<hour-19><msgs>111</msgs><bytes>504KB</bytes></hour-19>
		<hour-20><msgs>107</msgs><bytes>622KB</bytes></hour-20>
		<hour-21><msgs>91</msgs><bytes>442KB</bytes></hour-21>
		<hour-22><msgs>81</msgs><bytes>576KB</bytes></hour-22>
		<hour-23><msgs>99</msgs><bytes>576KB</bytes></hour-23>
	</messages-per-hour>
	<urls>
		<url-1><freq>1948</freq><url>http://vger.kernel.org/majordomo-info.html</url></url-1>
		<url-2><freq>1939</freq><url>http://www.tux.org/lkml/</url></url-2>
		<url-3><freq>57</freq><url>http://mail.yahoo.com</url></url-3>
		<url-4><freq>20</freq><url>ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.13/2.6.13-mm2/</url></url-4>
		<url-5><freq>20</freq><url>http://enigmail.mozdev.org</url></url-5>
	</urls>
	<top-avg-resp>
		<resp-pers rank="1">
			<name>sreeni</name>
			<avg-resp-time>00:01:15</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
		<resp-pers rank="2">
			<name>james&#32;lamanna</name>
			<avg-resp-time>00:04:37</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
		<resp-pers rank="3">
			<name>andrea&#32;arcangeli</name>
			<avg-resp-time>00:05:29</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
		<resp-pers rank="4">
			<name>james&#32;morris</name>
			<avg-resp-time>00:08:06</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
		<resp-pers rank="5">
			<name>aurelien&#32;francillon</name>
			<avg-resp-time>00:08:22</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
		<resp-pers rank="6">
			<name>felix&#32;oxley</name>
			<avg-resp-time>00:08:25</avg-resp-time>
			<n-replies>1</n-replies>
		</resp-pers>
	</top-avg-resp>
	<created-with><name>mboxstats</name><version>2.8</version><developer>folkert@vanheusden.com</developer><url>http://www.vanheusden.com/mboxstats/</url></created-with>
</mailbox-stats>

<section
  title="Linux 2.6.13-mm2 Released; Some Suspend/Resume Issues"
  subject="2.6.13-mm2"
  archive="http://groups.google.com/group/linux.kernel/msg/0bb4b6a99474f1ca"
  posts="83"
  startdate="08 Sep 2005 05:30:42 -0800"
  enddate="30 Sep 2005 10:48:31 -0800"
>
<topic>Digital Video Broadcasting</topic>
<topic>FS: CIFS</topic>
<topic>Framebuffer</topic>
<topic>Kernel Release Announcement</topic>
<topic>PCI</topic>
<topic>Power Management: ACPI</topic>
<topic>USB</topic>

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

<quote who="Andrew Morton">

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

<p>(kernel.org propagation is slow. There's a temp copy at <a
href="http://www.zip.com.au/~akpm/linux/patches/stuff/2.6.13-mm2.bz2">http://www.zip.com.au/~akpm/linux/patches/stuff/2.6.13-mm2.bz2</a>)</p>

<ul>

<li>Added Andi's x86_64 tree, as separate patches</li>

<li>Added a driver for TI acx1xx cardbus wireless NICs</li>

<li>Large revamp of pcmcia suspend handling</li>

<li>Largeish v4l and DVB updates</li>

<li>Significant parport rework</li>

<li>Many tty drivers still won't compile</li>

<li>Lots of framebuffer driver updates</li>

<li>There are still many patches here for 2.6.14. We're doing pretty well
with merging up the subsystem trees. ia64 and CIFS are still pending.
x86_64 and several of Greg's trees (especially USB) aren't merged yet.</li>

</ul>

</quote>

<p>Andrew tends to get a lot of response to these patches, typically minor
reports of compilation problems on a particular architecture or for particular
hardware drivers. This time was no exception. Various folks reported problems,
and Rafael J. Wysocki requested that a Yenta patch be taken back into the
-mm tree, that had earlier been taken out. He complained that his system
would not resume from suspend without it. Andrew was amenable to this,
and couldn't quite remember why the patch had been dropped in the first
place. But Hugh Dickins replied, <quote who="Hugh Dickins">I remember well.
My laptop does not APM resume from RAM with it. I've just rechecked and
that's still the case. I did try various patches from Rafael to help him
work it out, but it remained a puzzle.</quote> Rafael summarized:</p>

<quote who="Rafael J. Wysocki">

<p>the observations are sort of interesting (just for the record):</p>

<ol>

<li>The problem is due to interrupt sharing. The IRQ is shared between
yenta and 3c59x.</li>

<li>Without the yenta driver the box resumes.</li>

<li>Without the 3c59x driver the box resumes.</li>

<li>If yenta is woken up _before_ 3c59x, the box resumes.</li>

<li>If yenta is woken up _after_ 3c59x, the box hangs. Unfortunately,
this is the default, because of the PCI device numbers.</li>

</ol>

</quote>

<p>Daniel Ritz hurled himself at this problem, requesting system data from
Rafael, and scouring the archives and the bugs database for former discussion
and similar problems. He put up a patch, saying, <quote who="Daniel Ritz">we
get interrupt storms from usb which then hurt when yenta has it's handler
installed but usb has not. usb/hcd-pci.c frees the irq on suspend...so it
may be enough not to do that (survives suspend-to-ram and suspend-to-disk
here. yes, restore too :)</quote> Rafael replied:</p>

<quote who="Rafael J. Wysocki">

<p>I've tried and it apparently works provided that _none_ of the IRQ-sharing
devices drops the IRQ on suspend.</p>

<p>I think that's the whole point: Either all of the devices should drop/request
IRQs on suspend/resume, or none of them should do this.  IMHO we need to
chose one of these options and call it "the right way" or there always
will be problems with this.</p>

</quote>

<p>Close by, Linus Torvalds said, <quote who="Linus Torvalds">Trivial decision:
if not freeing the irq fixes the problem, then please send a tested patch
that does just that. It's what we used to do anyway.</quote> Elsewhere,
as other folks considered various possibilities, he added:</p>

<quote who="Linus Torvalds">

<p>The right thing is to not free and re-aquire the damn interrupt in the
first place. It was a MISTAKE. We undid the ACPI braindamage that made it
be required a month ago, because sane people REALIZED it was a mistake.</p>

<p>It's not just "random luck" that not releasing the interrupt over suspend
fixes the problem. The problem is _due_ to drivers releasing the interrupt
in the first place.</p>

<p>IT DOESN'T MATTER what we do before the suspend, because we don't control
the wakeup sequence. If the BIOS wakeup enables the devices again, the fact
that we disabled them on suspend makes zero difference.</p>

<p>And yes, we can always "fix" things by selecting the right order to
re-aquire the interrupts, but the thing is, the "right order" will be
machine-dependent and in general depend on the phase of the moon and BIOS
version, and ACPI quirks.</p>

<p>The _only_ sane thing to do is to not drop the interrupts in the first
place. So that if you start getting interrupts before you expect them,
you can still handle them.</p>

</quote>

</section>

<section
  title="ReiserFS Alienates Contributors"
  subject="I request inclusion of reiser4 in the mainline kernel"
  archive="http://groups.google.com/group/fa.linux.kernel/msg/aeb09c7190e148eb"
  posts="140"
  startdate="16 Sep 2005 10:05:08 -0800"
  enddate="04 Oct 2005 20:00:48 -0800"
>
<topic>FS: ReiserFS</topic>

<p>Hans Reiser requested that Reiser4 be included in the 2.6 tree, and he
tried to thank folks for their feedback and suggestions, but ultimately the
strain was too much for him, and he couldn't resist needling the developers
with statements like, <quote who="Hans Reiser">Most of my customers remark that
Namesys code is head and shoulders above the rest of the kernel code.</quote>
So the discussion went nowhere. After some heated discussion, at one point
Christoph Hellwig said:</p>

<quote who="Christoph Hellwig">

<p>Thanks a lot for the groundless attacks, but I'm done.</p>

<p>I'll stop helping you to review stuff because it's just totally pointless,
you ignore most of the review anyway and start personal attacks.</p>

<p>Please find someone else to review your code for inclusion, that can stand
beeing attacked everytime they write an email. Before you should probably
fix up various bits I wrote up and especialy make sure to get rid of all
duplication of generic I/O code or explain in detail why you need it and
fix your own implementations.</p>

</quote>

<p>Andrew collected Christoph's objections, and added them to the Reiser4
ChangeLog entry in his -mm tree, so they would not be forgotten.</p>

</section>

<section
  title="Patch Submission Policy Documentation"
  subject="[PATCH 0/3] CPUMETER (Re: [PATCH 0/5] SUBCPUSETS: a resource"
  archive="http://groups.google.com/group/fa.linux.kernel/msg/354c9363479c58e3"
  posts="34"
  startdate="26 Sep 2005 18:33:59 -0800"
  enddate="04 Oct 2005 11:49:59 -0800"
>

<p>In the course of discussion, Linus Torvalds accepted a patch, saying:</p>

<quote who="Linus Torvalds">

<p>Just a non-technical note: the sign-offs makes me suspect the patch (or
an earlier version of it) may have been written by Kurosawa-san. However,
it wasn't clear, so I didn't make that change, and so it now ends up being
in git with Paul as the author.</p>

<p>If that was wrong, please for the future keep authorship intact by having a
"From: A U Thor &lt;author@mailbox.com&gt;" at the head of the description,
which will make authorship clear and allow the tools to pick that up.</p>

</quote>

<p>Paul Jackson replied:</p>

<quote who="Paul Jackson">

<p>You guessed right. Your non-technical note was applicable.</p>

<p>Andrew - why doesn't your "The perfect patch" mention this? <a
href="http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt">http://www.zip.com.au/~akpm/linux/patches/stuff/tpp.txt</a></p>

<p>Linus - would you like a patch to Documentation/SubmittingPatches that
mentions this?</p>

<p>Hmmm ... I don't even see the "Acked-by" in these patch guides either.
Probably I should include that in SubmittingPatches as well.</p>

<p>Too bad that first line doesn't start "Author:" instead of "From:".
Oh well - I see Andrew already suggested that, and you declined. (You should'a
listened to him ;).</p>

</quote>

<p>Linus replied:</p>

<quote who="Linus Torvalds">

<p>The "From:" rule has been implicit in my tools for a _loong_ time, and
switching to "Author:" would just break the tools for no actual technical
gain. Not just the tools, either, since Andrew isn't the only one who follows
that From: rule - it would break "people".</p>

<p>So you'd have to make the tools accept _both_ "From:" and "Author:",
and I personally prefer an _unambiguously_ slightly misnamed thing over some
"either X or Y" where X is slightly misnamed but accepted because it's the
one more commonly used.</p>

<p>It's like the unix "creat()" system call. Sure, it would make more sense
to add the "e", but it wouldn't actually really _help_ anybody.</p>

<p>As to documenting the "From:" thing - yes, we probably should. It's quite
commonly used.</p>

</quote>

</section>

<section
  title="Thermal Control And cpufreq Support For iMac G5"
  subject="iMac G5: experimental thermal &amp; cpufreq support"
  archive="http://groups.google.com/group/linux.kernel/msg/dfcac59257703565"
  posts="6"
  startdate="29 Sep 2005 16:28:02 -0800"
  enddate="30 Sep 2005 17:12:12 -0800"
>
<topic>FS: sysfs</topic>
<topic>I2C</topic>

<p>Benjamin Herrenschmidt said:</p>

<quote who="Benjamin Herrenschmidt">

<p>I now have some experimental thermal control and cpufreq support for
iMac G5. I have not _yet_ implemented support for the SMU based single
CPU desktops (PowerMac9,1), those will have to wait a little bit more (not
too much hopefully, but I need potential testers to contact me as I lack
hardware access). At this point, it should work on PowerMac8,1 (iMacG5 rev A)
and PowerMac8,2 (iMacG5 rev B).</p>

<p>WARNING: This is really a 'first shot'. There is no overtemp detection,
so be careful. The driver doesn't yet have a sysfs interface for you to
read the temperature, but I left it with verbose debugging enabled in the
kernel log so you can see what's going on with the 2 control loops (the
System one which ticks every 5 seconds and the CPU one which ticks every
second). Please tell me if it appears to behave properly. On my iMac G5 rev
A, the target temperature for the CPU is set by the firmware at 78 degree
C with a max at about 83 degree. If I put load on the CPU, the CPU appears
to properly ramp up slowly to 82 then go down and stabilize at 78 while the
driver slowly ramps the fans up.</p>

<p>The algorithm itself is extracted from darwin. However, it's a rather
complex modified version of the PID algorithm, and thus it could use some
review to make sure I got everything right.</p>

<p>The thermal control is also part of a new infrastructure I have written
called "windfarm" that splits the whole thing into several modules (though
I have only tested with everything built in at this point). Ultimately,
it should be possible to port the existing Desktop G5 and Xserver thermal
driver to the new infrastructure provided that the appropriate sensor &amp;
control modules are written. The old thermal driver uses pretty much the
same 2 kind of PID control loops as provided by the windfarm_pid helper.</p>

<p>I would encourage people doing thermal control on other machines (laptops,
etc...) to also use the new infrastructure.</p>

<p>Ok, now the patches. You need to appy them in proper order. First of all,
it all is on top of current -git as of yesterday. I won't guarantee they
will apply on anything more ancient.</p>

<p>First, you need a fix that is currently pending in -mm (and should be in
2.6.14 before it's final) :</p>

<p><a
href="http://gate.crashing.org/~benh/ppc64-smu-fix.diff">http://gate.crashing.org/~benh/ppc64-smu-fix.diff</a></p>

<p>Then, you can apply the patch that adds cpufreq support for the iMac G5
(and possibly the SMU based desktop, though not tested)</p>

<p><a
href="http://gate.crashing.org/~benh/ppc64-fx-freq-scaling.diff">http://gate.crashing.org/~benh/ppc64-fx-freq-scaling.diff</a></p>

<p>Then apply those 2 patches in that order:</p>

<p><a
href="http://gate.crashing.org/~benh/ppc64-smu-partitions.diff">http://gate.crashing.org/~benh/ppc64-smu-partitions.diff</a></p>

<p><a
href="http://gate.crashing.org/~benh/ppc64-smu-thermal-control.diff">http://gate.crashing.org/~benh/ppc64-smu-thermal-control.diff</a></p>

<p>That's it. Now enable:</p>

<p> CONFIG_WINDFARM_SMU</p>

<p>and</p>

<p> CONFIG_I2C_PMAC_SMU</p>

<p>If you are using modules, you may have to manually load the whole bunch,
especially the i2c SMU one which isn't requested (yet).</p>

</quote>

<p>Geoff Levand asked, <quote who="Geoff Levand">As we are already in the
digital domain, I would think it would be more savvy to use a digital
controller than try to simulate an analog controller... Why don't you
abstract the control algorithm such that you can plug in others as they
are developed.</quote> Benjamin replied:</p>

<quote who="Benjamin Herrenschmidt">

<p>Because I don't know much about those control algorithms, and all
the calibration data provided by the firmware is in the form of factors
for these algorithms, I wouldn't know how to "unmangle" them to use with
different ones.</p>

<p>Actually, the control algorithms (PID and modified PID) are in a "helper",
so it's fairly easy for the platform module to use whatever it wants, feel
free to submit other algorithms :) But for Apple machines, I'd rather use
what I have calibration data for, unless you can produce something that
works without any...</p>

</quote>

<p>Dean Hamstead said:</p>

<quote who="Dean Hamstead">

<p>Although i dont have an imac g5, i think that in general ben is on the
right track. its better to have something in place than nothing.</p>

<p>not putting down the feedback, but im not sure just how much fiddling
people will really want, and its not a huge audience. which
brings me back to the point of just getting something in place and
then people can change it as IMO linux kernel code is more likely to be
fiddled with (and better 'documentation' - whatever that is) than darwin
code.</p>

<p>go ben, keep working hard. and keep chasing the mpeg decoder in the ati
cards of apple ibook and friends!</p>

</quote>

</section>

<section
  title="git Guide Updated"
  subject="[howto] Kernel hacker's guide to git, updated"
  archive="http://groups.google.com/group/fa.linux.kernel/msg/5e250a16d92b9e68"
  posts="39"
  startdate="29 Sep 2005 07:03:05 -0800"
  enddate="04 Oct 2005 13:44:58 -0800"
>

<p>Jeff Garzik said:</p>

<quote who="Jeff Garzik">

<p>Just updated my KHGtG to include the latest goodies available in git-core,
the Linux kernel standard SCM tool:</p>

<p><a
href="http://linux.yyz.us/git-howto.html">http://linux.yyz.us/git-howto.html</a></p>

<p>Several changes in git-core have made working with git a lot easier,
so be sure to re-familiarize yourself with the development process.</p>

<p>Comments, corrections, and notes of omission welcome. This document
mainly reflects my typical day-to-day git activities, and may not be very
applicable outside of kernel work.</p>

</quote>

<p>Dave Jones replied:</p>

<quote who="Dave Jones">

<p>You wrote..</p>

<pre>$ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
$ cd linux-2.6
$ rsync -a --verbose --stats --progress \
  rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git/ \
  .git/</pre>

<p>Could be just..</p>

<pre>$ git clone rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git linux-2.6
$ cd linux-2.6
$ git pull</pre>

<p>Likewise, in the next section, git pull doesn't need an argument
if pulling from the repo it cloned.</p>

</quote>

<p>Anton Altaparmakov pointed out that those two sets of commands were <quote
who="Anton Altaparmakov">not actually the same. "git pull" for example will
not download Linus' tags whilst the rsync would get everything.</quote>
Dave replied, <quote who="Dave Jones">Ah. I didn't know this. Thanks. Hmm,
it'd be nice to have a shorthand 'not have to type the url, pull everything'.
Something like 'git pull all'.</quote> Linus Torvalds posted a patch, saying,
<quote who="Linus Torvalds">Something like this? Except it's called "git
fetch --all", and it's obviously totally untested.</quote> Unfortunately the
discussion skewed off here, because he had upgraded to a new version of Pine
that by default would mess up whitespace in patches. Linus reconfigured his
Pine, but the subthread clogged up and died out.</p>

<p>Elsewhere, Jeff updated his guide again, taking into account all the
comments he'd received. Junio C. Hamano, the official git maintainer, responded
to the part of the guide that said, "Once the 'git fetch --tags' changes make
it into the official repository (are they there already?), I'll remove all
the remaining direct references to running rsync." Junio replied to this:</p>

<quote who="Junio C. Hamano">

<p>Sounds like a thinly veiled threat and/or very effective
prodding ;-).</p>

<p>It is not there yet only because I simply have not got around to
it, but it will happen before 0.99.8.</p>

<p>I suspect the version Linus posted has a funny interaction with
'git-pull'; 'git pull --tags' by mistake, or intentionally to
file a bug report to annoy me ;-), would create an Octopus out
of those tags, if I am not mistaken.</p>

</quote>

<p>Linus replied:</p>

<quote who="Linus Torvalds">

<p>Hey, even more impressive is "git pull --all", which will happily try to
create an octopus of every single ref available at the other end.</p>

<p>Now, I think that octopus merges in _general_ are likely to be driver
error, and that it might make sense to have a separate flag to enable
them in the first place. That would solve the confusion..</p>

<p>So then you could do</p>

<p>        git pull --all --octopus xyzzy</p>

<p>if you _really_ meant to do that.</p>

</quote>

<p>Junio replied:</p>

<quote who="Junio C. Hamano">

<p>True.</p>

<p>However, I think --all is a mistake even if you use it without
merging in 'git fetch', so I am not planning to do refs/heads/
side, at least not yet.  Even if you prevent an Octopus, what
would you do then?  If you choose to merge one of them, which
one?  Not merging any that is not explicitly specified on the
command line, seems to me the most sensible and safe option.</p>

<p>The rule for 'pull' to decide which refs to merge is:</p>

<ol>

<li>if command line has explicit refspecs (--tags and --heads
     do not count), they are all merged.</li>

<li>if command line has no explicit refspecs (--tags and
     --heads do not count), the default one found from either
     remotes or branches file is merged.</li>

</ol>

<p>Notice that I am forbidding remotes file to say "by default I always
merge these three heads from there to make an Octopus" by the above rule
(branches file cannot even name more than one head so this is not an issue).
Since everybody seems to agree that Octopus is not something that is done
mechanically and routinely anyway (I do make many Octopus merges, but they
happen across my local topic branches. Topics merged change day-by-day,
and even the set of topics alive at the time changes everyday. IOW, it is
not something I would want to do with the same sets of heads every time by
describing them in the remotes file.), I think this is a sensible way to
guard against accidental Octopus.</p>

<p>We could consider fetching all heads, by minimally renaming
remote master to origin and getting everything else under the
same name, but I'd really want to keep the local namespace for
branches isolated from each other.  Many kernel.org public
repositories seem to have 'test' and 'release' branches and if
you are a maintainer of such a tree, and if you are interested
in another maintainer's tree, and if that other maintainer has
the 'test' and 'release' branches, --heads (or --tags)
overwriting your 'test' with his 'test' is obviously not what
you want.</p>

<p>Possibly, something like this could be arranged later:</p>

<p>        * git fetch --heads=$ns $remote "$@"</p>

<p>        In addition to the usual refspecs (the rest of the
        command line arguments), fetch all remote heads and
        store remote refs/heads/$a under local refs/heads/$ns/$a
        for all $a.  If $ns is empty, remote "master" is renamed
        "origin".</p>

<p>        * git fetch --heads $remote "$@"</p>

<p>        shorthand for empty $ns</p>

</quote>

</section>

<section
  title="Linux 2.6.14-rc2-mm2 Released"
  subject="2.6.14-rc2-mm2"
  archive="http://groups.google.com/group/fa.linux.kernel/msg/c87d06d8f0aa3603"
  posts="43"
  startdate="29 Sep 2005 14:37:32 -0800"
  enddate="04 Oct 2005 23:42:45 -0800"
>
<topic>Kernel Release Announcement</topic>

<p>Andrew Morton announced Linux 2.6.14-rc2-mm2, saying:</p>

<quote who="Andrew Morton">

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

<p>(temp copy at <a
href="http://www.zip.com.au/~akpm/linux/patches/stuff/2.6.14-rc2-mm2.gz">http://www.zip.com.au/~akpm/linux/patches/stuff/2.6.14-rc2-mm2.gz</a>)</p>

<ul>

<li>A bunch of memory management updates</li>

<li>The big pcmcia changes have been temporarily dropped</li>

<li>Multiple obscure tty drivers still won't compile</li>

<li>Lots of post-2.6.14-rc2-mm1 patches have been cheerfully tossed out
again due to various bugs, which felt nice.</li>

<li>I am offline until October 9. Please send critical 2.6.14 fixes direct
to Linus.</li>

</ul>

</quote>

</section>

<section
  title="Stable Series Patch Review Begins Towards 2.6.13.3"
  subject="[PATCH 00/10] -stable review"
  archive="http://groups.google.com/group/linux.kernel/msg/54d74f197d222a44"
  posts="22"
  startdate="29 Sep 2005 19:20:16 -0800"
  enddate="05 Oct 2005 12:05:16 -0800"
>
<topic>Bug Tracking</topic>
<topic>Networking</topic>
<topic>PCI</topic>

<mention>Stephen Hemminger</mention>
<mention>Ingo Molnar</mention>
<mention>Marc Lehmann</mention>
<mention>Ivan Kokshaysky</mention>
<mention>Linus Torvalds</mention>
<mention>Ion Badulescu</mention>
<mention>Julian Anastasov</mention>
<mention>Roland McGrath</mention>
<mention>Andi Kleen</mention>
<mention>Jeff Dike</mention>
<mention>Andrew Morton</mention>
<mention>Alexander Nyberg</mention>

<p>Chris Wright said:</p>

<quote who="Chris Wright">

<p>This is the start of the stable review cycle for the 2.6.13.3 release.
There are 10 patches in this series, all will be posted as a response to
this one.  If anyone has any issues with these being applied, please let
us know.  If anyone is a maintainer of the proper subsystem, and wants
to add a Signed-off-by: line to the patch, please respond with it.</p>

<p>These patches are sent out with a number of different people on the
Cc: line.  If you wish to be a reviewer, please email stable@kernel.org
to add your name to the list.  If you want to be off the reviewer list,
also email us.</p>

<p>Responses should be made by Sun Oct 2, 02:00 UTC.  Anything received
after that time, might be too late.</p>

</quote>

<p>He posted a set of patches with the following changelog entries:</p>

<quote who="Chris Wright">

<ul>

<li>

<p>In some cases, especially on modern laptops with a lot of PCI and
cardbus bridges, we're unable to assign correct secondary/subordinate
bus numbers to all cardbus bridges due to BIOS limitations unless
we are using "pci=assign-busses" boot option.
So some cardbus controllers may not have attached subordinate pci_bus
structure, and yenta driver must cope with it - just ignore such cardbus
bridges.</p>

<p>For example, see <a href="https://bugzilla.novell.com/show_bug.cgi?id=113778">https://bugzilla.novell.com/show_bug.cgi?id=113778</a></p>

<p>Signed-off-by: Ivan Kokshaysky &lt;ink@jurassic.park.msu.ru&gt;<br />
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>It turns out that the BUG_ON() in fs/exec.c: de_thread() is unreliable
and can trigger due to the test itself being racy.</p>

<pre>de_thread() does
        while (atomic_read(&amp;sig-&gt;count) &gt; count) {
        }
        .....
        .....
        BUG_ON(!thread_group_empty(current));

but release_task does
        write_lock_irq(&amp;tasklist_lock)
        __exit_signal
                (this is where atomic_dec(&amp;sig-&gt;count) is run)
        __exit_sighand
        __unhash_process
                takes write lock on tasklist_lock
                remove itself out of PIDTYPE_TGID list
        write_unlock_irq(&amp;tasklist_lock)</pre>

<p>so there's a clear (although small) window between the
atomic_dec(&amp;sig-&gt;count) and the actual PIDTYPE_TGID unhashing of the
thread.</p>

<p>And actually there is no need for all threads to have exited at this
point, so we simply kill the BUG_ON.</p>

<p>Big thanks to Marc Lehmann who provided the test-case.</p>

<p>Fixes Bug 5170 (<a href="http://bugme.osdl.org/show_bug.cgi?id=5170">http://bugme.osdl.org/show_bug.cgi?id=5170</a>)</p>

<p>Signed-off-by: Alexander Nyberg &lt;alexn@telia.com&gt;<br />
Cc: Roland McGrath &lt;roland@redhat.com&gt;<br />
Cc: Andrew Morton &lt;akpm@osdl.org&gt;<br />
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;<br />
Acked-by: Andi Kleen &lt;ak@suse.de&gt;<br />
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;<br /></p>

</li>

<li>

<p>per-socket multicast filters were not being applied to all sockets
in the case of an exact-match bound address, due to an over-exuberant
"return" in the look-up code. Fix below. IPv4 does not have this problem.</p>

<p>Thanks to Hoerdt Mickael for reporting the bug.</p>

<p>Signed-off-by: David L Stevens &lt;dlstevens@us.ibm.com&gt;
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>        ip_vs_ftp when loaded can create NAT connections with unknown
client port for passive FTP. For such expectations we lookup with
cport=0 on incoming packet but it matches the format of the persistence
templates causing packets to other persistent virtual servers to be
forwarded to real server without creating connection. Later the
reply packets are treated as foreign and not SNAT-ed.</p>

<p>        If the IPVS box serves both FTP and other services (eg. HTTP)
for the time we wait for first packet for the FTP data connections with
unknown client port (there can be many), other HTTP connections
that have nothing common to the FTP conn break, i.e. HTTP client
sends SYN to the virtual IP but the SYN+ACK is not NAT-ed properly
in IPVS box and the client box returns RST to real server IP. I.e.
the result can be 10% broken HTTP traffic if 10% of the time
there are passive FTP connections in connecting state. It hurts
only IPVS connections.</p>

<p>        This patch changes the connection lookup for packets from
clients:</p>

<ul>

<li>introduce IP_VS_CONN_F_TEMPLATE connection flag to mark the
connection as template</li>
<li>create new connection lookup function just for templates -
ip_vs_ct_in_get</li>
<li>make sure ip_vs_conn_in_get hits only connections with
IP_VS_CONN_F_NO_CPORT flag set when s_port is 0. By this way
we avoid returning template when looking for cport=0 (ftp)</li>

</ul>

<p>Signed-off-by: Julian Anastasov &lt;ja@ssi.bg&gt;
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>We were leaking pmd pages when 3_LEVEL_PGTABLES was enabled. This fixes that,
has been well tested and is included in mainline tree. Please include in -stable
as well.</p>

<p>Signed-off-by: Jeff Dike &lt;jdike@addtoit.com&gt;<br />
Signed-off-by: Paolo 'Blaisorblade' Giarrusso &lt;blaisorblade@yahoo.it&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>Here is the patch (fuzz removed) for 2.6.13.2 that fixes OOPs when using
bonding with skge.</p>

<p>Skge driver was bringing link up/down when changing mac address. This
doesn't work in the bonding environment, and is more effort than needed.</p>

<p>Fixes-bug: <a href="http://bugzilla.kernel.org/show_bug.cgi?id=5271">http://bugzilla.kernel.org/show_bug.cgi?id=5271</a>
Signed-off-by: Stephen Hemminger &lt;shemminger@osdl.org&gt;<br />
Sigend-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>Patch from Joel Sing to fix the default congestion control algorithm
for incoming connections. If a new congestion control handler is added
(via module), it should become the default for new connections. Instead, the
incoming connections use reno. The cause is incorrect initialisation causes
the tcp_init_congestion_control() function to return after the initial if
test fails.</p>

<p>Signed-off-by: Stephen Hemminger &lt;shemminger@osdl.org&gt;<br />
Acked-by: "David S. Miller" &lt;davem@davemloft.net&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

<li>

<p>Handle better the case where the sender sends full sized
frames initially, then moves to a mode where it trickles
out small amounts of data at a time.</p>

<p>This known problem is even mentioned in the comments
above tcp_grow_window() in tcp_input.c, specifically:</p>

<pre>..
 * The scheme does not work when sender sends good segments opening
 * window and then starts to feed us spagetti. But it should work
 * in common situations. Otherwise, we have to rely on queue collapsing.
..</pre>

<p>When the sender gives full sized frames, the "struct sk_buff" overhead
from each packet is small.  So we'll advertize a larger window.
If the sender moves to a mode where small segments are sent, this
ratio becomes tilted to the other extreme and we start overrunning
the socket buffer space.</p>

<p>tcp_clamp_window() tries to address this, but it's clamping of
tp->window_clamp is a wee bit too aggressive for this particular case.</p>

<p>Fix confirmed by Ion Badulescu.</p>

<p>Signed-off-by: "David S. Miller" &lt;davem@davemloft.net&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</li>

</ul>

</quote>

<p>Two additional patches received some comment. The first had this changelog
entry:</p>

<quote who="Chris Wright">

<p>As I do periodically, I checked to see how far out of sync
compat_do_execve() has gotten from do_execve().  And as usual there
was some missing stuff in the former.  Perhaps we need some tighter
consolidation of these two routines to make this less likely to happen
in the future.</p>

<p>Anyways, on the success path of compat_do_execve() we forget
to call acct_update_integrals() and update_mem_hiwater(), as
is done in do_execve().</p>

<p>Signed-off-by: "David S. Miller" &lt;davem@davemloft.net&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;</p>

</quote>

<p>Hugh Dickins remarked, <quote who="Hugh Dickins">The patch is good,
but for -stable? Spelling corrections next?</quote> Chris replied,
<quote who="Chris Wright">Heh, I think you've got a good point. This one
doesn't have any real nasty side-effects that I can see. David do you have
objections to dropping this one from -stable?</quote> David S. Miller said,
<quote who="David S. Miller">No objections, you can drop it.</quote></p>

<p>The other patch to be discussed had this changelog entry:</p>

<quote who="Chris Wright">

<p>I think we should cache the per-socket route(dst_entry) only when the IPv6
UDP socket is connect(2)'ed. (which is same as IPv4 UDP send behavior)</p>

<p>Signed-off-by: Mitsuru KANDA &lt;mk@linux-ipv6.org&gt;<br />
Signed-off-by: Chris Wright &lt;chrisw@osdl.org&gt;<br /></p>

</quote>

<p>Chuck Wolber felt this really wasn't a necessary bug fix, and so didn't
belong in the -stable patch set. But David replied, <quote who="David
S. Miller">Without this unconnected ipv6 UDP sockets end up using the
wrong route or IPSEC path.</quote> Mitsuru Kanda, the author of the patch,
said he would work on updating the patch. Chris replied, <quote who="Chris
Wright">BTW, we dropped this one, since it had possible leak in it. I'll let
you and DaveM decide when the updated one is ready for -stable.</quote>
David said this would be fine.</p>

</section>

<section
  title="Linux 2.6.14-rc3 Released"
  subject="Linux v2.6.14-rc3"
  archive="http://groups.google.com/group/linux.kernel/msg/63a44f0dab96adab"
  posts="1"
  startdate="30 Sep 2005 15:09:36 -0800"
  enddate="30 Sep 2005 15:09:36 -0800"
>
<topic>Kernel Release Announcement</topic>

<p>Linus Torvalds announced Linux 2.6.14-rc3, saying:</p>

<quote who="Linus Torvalds">

<p>Ok, this may or may not be the last -rc before 2.6.14, but the point is
that we're getting closer.</p>

<p>The diffstat (not included here) tells the story: most of the changes are
just a couple of lines, with a few outliers: a new "cassini" network
driver, the mpt sas driver, some ip-conntrac work, and net/llc cleanups.
Oh, and sparc updates and some ppc tlb and smu work.</p>

</quote>

</section>

<section
  title="Linux 2.6.13.3 Released"
  subject="Linux 2.6.13.3"
  archive="http://groups.google.com/group/linux.kernel/msg/2f15cb163f3d81a8"
  posts="7"
  startdate="03 Oct 2005 18:16:20 -0800"
  enddate="05 Oct 2005 00:35:20 -0800"
>
<topic>Networking</topic>

<mention>Stephen Hemminger</mention>
<mention>Chris Wright:</mention>
<mention>Ivan Kokshaysky</mention>
<mention>Julian Anastasov</mention>
<mention>Alexey Kuznetsov</mention>
<mention>David Stevens</mention>
<mention>Alexander Nyberg</mention>

<p>Chris Wright announced Linux 2.6.13.3, saying:</p>

<quote who="Chris Wright">

<p>We (the -stable team) are announcing the release of the 2.6.13.3 kernel.</p>

<p>The diffstat and short summary of the fixes are below.</p>

<p>I'll also be replying to this message with a copy of the patch between
2.6.13.2 and 2.6.13.3, as it is small enough to do so.</p>

<p>The updated 2.6.13.y git tree can be found at:<br />
        rsync://rsync.kernel.org/pub/scm/linux/kernel/git/chrisw/linux-2.6.13.y.git<br />
and can be browsed at the normal kernel.org git web browser:<br />
        <a href="http://www.kernel.org/git/">www.kernel.org/git/</a></p>

<p>Alexander Nyberg:<br />
  Fix fs/exec.c:788 (de_thread()) BUG_ON</p>

<p>Alexey Kuznetsov:<br />
  Don't over-clamp window in tcp_clamp_window()</p>

<p>Chris Wright:<br />
  Linux 2.6.13.3</p>

<p>David Stevens:<br />
  fix IPv6 per-socket multicast filtering in exact-match case</p>

<p>Ivan Kokshaysky:<br />
  yenta oops fix</p>

<p>Julian Anastasov:<br />
  ipvs: ip_vs_ftp breaks connections using persistence</p>

<p>Paolo 'Blaisorblade' Giarrusso:<br />
  uml - Fix x86_64 page leak</p>

<p>Stephen Hemminger:<br />
  skge: set mac address oops with bonding<br />
  tcp: set default congestion control correctly for incoming connections</p>

</quote>

</section>

<section
  title="Documenting That ksymoops Should No Longer Be Used"
  subject="[PATCH] Documentation: ksymoops should no longer be used to decode Oops messages"
  archive="http://groups.google.com/group/fa.linux.kernel/msg/b709b43e3fe6a952"
  posts="7"
  startdate="05 Oct 2005 22:39:43 -0800"
  enddate="07 Oct 2005 00:49:48 -0800"
>

<p>Jesper Juhl posted a patch to <quote who="Jesper Juhl">Document the fact
that ksymoops should no longer be used to decode Oops messages.</quote>
Alexey Dobriyan replied, <quote who="Alexey Dobriyan">If it's considered
harmful, better remove all references to ksymoops. 2.4 users will happily
grab their copy of this file from 2.4 tree.</quote> Jesper said, <quote
who="Jesper Juhl">I opted to keep the entry but make an explicit note
that ksymoops should not be used for 2.6 kernels to make it clear. There
are still people who use ksymoops on 2.6 Oops messages, so I thought it
would make sense to keep the entry but make it clear that you should /not/
do that.</quote> But he said either way would be fine, and posted another
patch to remove the ksymoops entry instead. He remarked, <quote who="Jesper
Juhl">I'll leave it up to the powers that be to sprinkle holy penguin pee
on the preferred version.</quote></p>

<p>Elsewhere, Kalin Kozhuharov asked what was the preferred method to decode
oopses on 2.6; and Randy Dunlap replied:</p>

<quote who="Randy Dunlap">

<p>You should just enable CONFIG_KALLSYMS so that the kernel can
report (decode) the symbols with the oops message.</p>

<p>Yes, ksymoops will still work, but it should only be used if
the kernel was not configured with CONFIG_KALLSYMS, and some
people say that the kernel oops + symbols are better than
the ksymoops output.  I haven't compared them so can't say.</p>

</quote>

</section>

</kc>

