<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://www.kerneltrap.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>KernelTrap - Andi Kleen</title>
 <link>http://www.kerneltrap.org/taxonomy/term/322/0</link>
 <description></description>
 <language>en-local</language>
<item>
 <title>Defaulting To 4K Stacks</title>
 <link>http://www.kerneltrap.org/Linux/Defaulting_To_4K_Stacks</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Andrew Morton &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2008/4/18/1498474&quot;&gt;replied to a commit message&lt;/a&gt; making 4k stacks the default, saying, &quot;&lt;i&gt;this patch will cause kernels to crash.&lt;/i&gt;&quot;  Ingo Molnar replied, &quot;&lt;i&gt;what mainline kernels crash and how will they crash? Fedora and other distros have had 4K stacks enabled for years.&lt;/i&gt;&quot;  He added, &quot;&lt;i&gt;we&#039;ve conducted tens of thousands of bootup tests with all sorts of drivers and kernel options enabled and have yet to see a single crash due to 4K stacks.&lt;/i&gt;&quot;  During the lengthy discussion it was suggested that nfs+xfs+raid kernel configurations, and using ndiswrapper are the most common reasons for overflowing a 4K stack size.&lt;/p&gt;
&lt;p&gt;Andi Kleen questioned the usefulness of 4k stacks, &quot;&lt;i&gt;as far as I can figure out they are not [a worthy goal]. They might have been a worthy goal on crappy 2.4 VMs, but these times are long gone.&lt;/i&gt;&quot;  Arjan van de Ven suggested that though the 2.6 VM is much improved over the 2.4 VM, fragmentation with 8K stacks remains an unsolvable problem,  &quot;&lt;i&gt;it&#039;s basic math; the Linux VM gets to deal with both short and long lasting allocations; no matter how hard you try to get some degree of fragmentation; especially due to the 15:1 acceleration you get due to the lowmem issue.  And before you say &#039;you should use 64 bit on such machines&#039;; I would love it if more people used 64 bit linux. Sadly the adoption rate of that is not very good still.... by far ;(&lt;/i&gt;&quot;  In another email, Arjan listed two advantages to 4K stacks, &quot;&lt;i&gt;1) less memory consumption in the lowmem zone (critical for enterprise use, also good for general performance), and 2) kernel stacks at 8K are one of the most prominent order-1 allocations in the kernel; again with big-memory systems the fragmentation of the lowmem zone is a problem (and the distros that ship 4K stacks went there because of customer complaints)&lt;/i&gt;&quot;.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/Linux/Defaulting_To_4K_Stacks&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/Defaulting_To_4K_Stacks#comments</comments>
 <category domain="http://www.kerneltrap.org/4k_stacks">4k stacks</category>
 <category domain="http://www.kerneltrap.org/8k_stacks">8k stacks</category>
 <category domain="http://www.kerneltrap.org/Andi_Kleen">Andi Kleen</category>
 <category domain="http://www.kerneltrap.org/Andrew_Morton">Andrew Morton</category>
 <category domain="http://www.kerneltrap.org/Arjan_van_de_Ven">Arjan van de Ven</category>
 <category domain="http://www.kerneltrap.org/Ingo_Molnar">Ingo Molnar</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/merge_window">merge window</category>
 <category domain="http://www.kerneltrap.org/NDISwrapper">NDISwrapper</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Wed, 23 Apr 2008 01:42:24 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16036 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>White Space</title>
 <link>http://www.kerneltrap.org/Linux/White_Space</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/9/19/263753&quot;&gt;Matt LaPlante reported&lt;/a&gt; that there&#039;s currently 151,809 bytes of trailing white space in the Linux kernel, requiring a 15 megabyte patch to remove it all.  Andi Kleen argued that the white space didn&#039;t much matter, &quot;&lt;i&gt;you don&#039;t actually save anything on disk on most file systems (essentially everything except reiserfs on current Linux) because all files are rounded to block size (normally 4K).  Same in page cache.  And in tar files bzip2/gzip is very good at compacting them.&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;Andi went on to add that it&#039;s an issue that is slowly solving itself, &quot;&lt;i&gt;many kernel maintainers automatically remove trailing white space on any new lines these days. So as the kernel keeps changing it should eventually all disappear; except on essentially dead code.&lt;/i&gt;&quot;  Pádraig Brady confirmed that things are naturally improving over time, as a similar report in 2001 found 224,654 bytes of trailing whitespace in the Linux kernel.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/Linux/White_Space&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/White_Space#comments</comments>
 <category domain="http://www.kerneltrap.org/Andi_Kleen">Andi Kleen</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/970">Matt LaPlante</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/969">trivial</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/968">white space</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Sat, 22 Sep 2007 09:22:00 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">14413 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Discussing the x86 Merge</title>
 <link>http://www.kerneltrap.org/Linux/Discussing_the_x86_Merge</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Sam Ravnborg took a look at the &lt;a href=&quot;http://kerneltrap.org/node/13984&quot;&gt;x86 unification patches&lt;/a&gt; and &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2007/9/11/230699&quot;&gt;commented&lt;/a&gt;, &quot;&lt;i&gt;from the mails and discussions I expected it be be obvious what was i386 only, what was shared and what was x86_64 only.&lt;/i&gt;&quot;  He listed 16 files in &lt;code&gt;x86/pci&lt;/code&gt; and noted, &quot;&lt;i&gt;in the filename there is NOTHING for most of the non-shared code that tell that this file is used by only i386 or x86_64.&lt;/i&gt;&quot; Andi Kleen concurred, &quot;&lt;i&gt;exactly my point from KS. The big mash-up will not really make much difference in terms of Makefile clarity or whatever Thomas&#039; point was. Apparently he wanted to eliminate a few lines of code from the Makefile and merge the header files completely?&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;Linus Torvalds disagreed saying, &quot;&lt;i&gt;the problem right now is the *reverse* - even though they are in different  subdirectories (and thus *look* like they are all separate), they aren&#039;t.  So the merged end result is much better: at a first approximation everything is shared (largely true), and the ones that aren&#039;t shared can be made more obvious.&lt;/i&gt;&quot;  He added, &quot;&lt;i&gt;at least things like &quot;grep&quot; will work sanely, and people will be  *aware* that &#039;Oh, this touches a file that may be used by the other word-size&#039;.&lt;/i&gt;&quot;  Linus continued:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;Right now, we have people changing &#039;i386-only&#039; files that turn out to be used by x86-64 too - through very subtle Makefile things that the person who only looks into the i386 Makefile will never even *see*.&lt;/p&gt;
&lt;p&gt;&quot;THAT is the problem (well, at least part of it).&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/Linux/Discussing_the_x86_Merge&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/Discussing_the_x86_Merge#comments</comments>
 <category domain="http://www.kerneltrap.org/Andi_Kleen">Andi Kleen</category>
 <category domain="http://www.kerneltrap.org/Linus_Torvalds">Linus Torvalds</category>
 <category domain="http://www.kerneltrap.org/Sam_Ravnborg">Sam Ravnborg</category>
 <category domain="http://www.kerneltrap.org/x86">x86</category>
 <category domain="http://www.kerneltrap.org/x86_unification">x86 unification</category>
 <category domain="http://www.kerneltrap.org/x86-64">x86-64</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Sat, 15 Sep 2007 12:08:22 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">14383 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Linux: Unified x86 Architecture</title>
 <link>http://www.kerneltrap.org/node/13984</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Thomas Gleixner described an effort to create a unified x86 architecture tree, &quot;&lt;i&gt;the core idea behind our project is simple to describe: we introduce a new arch/x86/ and include/asm-x86/ file hierarchy that includes all the existing 32-bit and 64-bit x86 code and allows the building of either a 32-bit (i386) kernel or a 64-bit (x86_64) kernel.&lt;/i&gt;&quot;  Andi Kleen expressed some concern, &quot;&lt;i&gt;I think it&#039;s a bad idea because it means we can never get rid of any old junk. IMNSHO arch/x86_64 is significantly cleaner and simpler in many ways than arch/i386 and I would like to preserve that. Also in general arch/x86_64 is much easier to hack than arch/i386 because it&#039;s easier to regression test and in general has to care about much less junk. And I don&#039;t know of any way to ever fix that for i386 besides splitting the old stuff off completely.&lt;/i&gt;&quot;  Additional concerns about legacy issues were countered by Linus Torvalds, &quot;&lt;i&gt;there really isn&#039;t that much legacy crud. There are things like random quirks, but every time I hear the (theoretical) argument about how much time and effort we save by having it duplicated somewhere else, I think about all the time we definitely waste by fixing the same bug twice (and worry about the cases where we don&#039;t).&lt;/i&gt;&quot;  Among the justifications for a unified architecture, Thomas noted:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;We believe that the whole x86 CPU family is very much related and should be supported in a single architecture tree. All 64-bit CPUs implement the ability to execute pure 32-bit kernels, and will probably do so for the next couple of decades. So it&#039;s not like it will ever be possible to get rid of our legacies: for example even the latest 64-bit CPUs implement the legacy &#039;A20 line&#039; feature that was already a weird outdated hack in the days of 16-bit x8086 CPUs.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/node/13984&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/node/13984#comments</comments>
 <category domain="http://www.kerneltrap.org/Andi_Kleen">Andi Kleen</category>
 <category domain="http://www.kerneltrap.org/Linus_Torvalds">Linus Torvalds</category>
 <category domain="http://www.kerneltrap.org/Thomas_Gleixner">Thomas Gleixner</category>
 <category domain="http://www.kerneltrap.org/x86">x86</category>
 <category domain="http://www.kerneltrap.org/x86_unification">x86 unification</category>
 <category domain="http://www.kerneltrap.org/x86-64">x86-64</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Tue, 24 Jul 2007 00:28:00 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">13984 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Linux:  Reviewing the Tickless Kernel for x86-64</title>
 <link>http://www.kerneltrap.org/node/11751</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/news/linux&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/K-Linux.gif&quot; alt=&quot;Linux news&quot; title=&quot;Linux news&quot;  width=&quot;75&quot; height=&quot;75&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Included in Andrew Morton&#039;s potential 2.6.23 merge list [&lt;a href=&quot;http://kerneltrap.org/node/11736&quot;&gt;story&lt;/a&gt;] were a series of patches to make the x86-64 architecture tickless.  Andi Kleen, the x86-64 maintainer replied, &quot;&lt;i&gt;I&#039;m sceptical about the dynticks code. It just rips out the x86-64 timing code completely, which needs a lot more review and testing. Probably not .23.&lt;/i&gt;&quot;  Linus Torvalds agreed, &quot;&lt;i&gt;we are *not* going to do another &#039;rip everything out, and replace it with new code&#039; again.  Over my dead body.  We&#039;re going to do this thing gradually, or not at all.&lt;/i&gt;&quot;  He went on to explain &quot;&lt;i&gt;the patch-set itself actually looks fine, as far as I&#039;m concerned.  But it does seem to have that &#039;enable everything in one go&#039; problem.  I&#039;d much rather see one time source at a time being converted, and enabled then and there, so that when people report problems and do a bisection, if it was HPET that broke, you get the commit that changed HPET.&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;In response to the pains caused by the original dyntick merge in 2.6.21, Ingo Molnar acknowledged, &quot;&lt;i&gt;we had 12 -hrt/dynticks merge related regressions between 2.6.21-rc1 and -final, and 4 after final.&lt;/i&gt;&quot;  He went on to point out, &quot;&lt;i&gt;it&#039;s all pretty quiet today on the dynticks regressions front. (th