<?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 - Alan Cox</title>
 <link>http://www.kerneltrap.org/taxonomy/term/197/0</link>
 <description></description>
 <language>en-local</language>
<item>
 <title>Linux: Removing The Big Kernel Lock</title>
 <link>http://www.kerneltrap.org/Linux/Removing_The_Big_Kernel_Lock2</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;Arnd Bergmann noted that he&#039;s working on removing the &lt;a href=&quot;http://kerneltrap.org/BKL&quot;&gt;BKL&lt;/a&gt; from the &lt;a href=&quot;http://kerneltrap.org/Linux&quot;&gt;Linux&lt;/a&gt; kernel, &quot;&lt;i&gt;I&#039;ve spent some time continuing the work of the people on Cc and many others to remove the big kernel lock from Linux and I now have [a] bkl-removal branch in my git tree&lt;/i&gt;&quot;.  He went on to explain that his branch is working, and lets him run the Linux kernel, &quot;&lt;i&gt;on [a] quad-core machine with the only users of the BKL being mostly obscure device driver modules.&lt;/i&gt;&quot;  Arnd noted that this effort has a long history, &quot;&lt;i&gt;the oldest patch in this series is roughly eight years old and is Willy&#039;s patch to remove the BKL from fs/locks.c, and I took a series of patches from Jan that removes it from most of the VFS.&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;Arnd noted that his patch adds a global mutex to the TTY layer, which he called the &#039;Big TTY Mutex&#039; and described as, &quot;the basic idea here is to make recursive locking and the release-on-sleep explicit, so every mutex_lock, wait_event, workqueue_flush and schedule in the TTY layer now explicitly releases the BTM before blocking.&quot;  &lt;a href=&quot;http://kerneltrap.org/Alan_Cox&quot;&gt;Alan Cox&lt;/a&gt; suggested that this portion of the patch was best dropped for now, &quot;&lt;i&gt;it would be nice to get the other bits in first removing BKL from most of the kernel and building kernels which are non BKL except for the tty layer. That (after &lt;a href=&quot;http://kerneltrap.org/Ingo_Molnar&quot;&gt;Ingo&lt;/a&gt;&#039;s box from hell has run it a bit) would reasonably test the assertion that the tty layer has no BKL requirements that are driven by [code] external to tty layer code.&lt;/i&gt;&quot;  &lt;a href=&quot;http://kerneltrap.org/Andrew_Morton&quot;&gt;Andrew Morton&lt;/a&gt; suggested that the patches be pushed upstream to their appropriate maintainers for an additional sanity check, &quot;&lt;i&gt;Seems that there might be a few tricksy bits in here.  Please do push at least the non-obvious parts out to the relevant people.&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/Removing_The_Big_Kernel_Lock2&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/Removing_The_Big_Kernel_Lock2#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/Andrew_Morton">Andrew Morton</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1274">Arnd Bergmann</category>
 <category domain="http://www.kerneltrap.org/BKL">BKL</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/news/linux">Linux news</category>
 <pubDate>Thu, 01 Apr 2010 14:52:12 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">55703 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: History Is A One Way Street</title>
 <link>http://www.kerneltrap.org/Quote/History_Is_A_One_Way_Street</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;History is a one way street, and you might as well have the fs known the way it is so that people remember &#039;reiser oh wasn&#039;t he the guy who..&#039; - unless you are trying to market the fs I guess.&quot;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;</description>
 <comments>http://www.kerneltrap.org/Quote/History_Is_A_One_Way_Street#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/390">Hans Reiser</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/quote">quote</category>
 <category domain="http://www.kerneltrap.org/reiser4">reiser4</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1102">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1094">linux-kernel</category>
 <pubDate>Wed, 13 Aug 2008 21:29:27 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16489 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: This Wants Doing With A Hash Not A Prayer</title>
 <link>http://www.kerneltrap.org/Quote/This_Wants_Doing_With_A_Hash_Not_A_Prayer</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;This wants doing with a hash not a prayer that &#039;32 slots is enough&#039;.&quot;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;</description>
 <comments>http://www.kerneltrap.org/Quote/This_Wants_Doing_With_A_Hash_Not_A_Prayer#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/quote">quote</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1102">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1094">linux-kernel</category>
 <pubDate>Wed, 06 Aug 2008 20:19:00 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16471 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Proposing Read-Only ZFS</title>
 <link>http://www.kerneltrap.org/Linux/Proposing_Read-Only_ZFS</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;A &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2008/7/17/2552624&quot;&gt;recent thread&lt;/a&gt; on the lkml discussed a blog entry stating that minimal ZFS support for GRUB was available under the GPL license, &quot;&lt;i&gt;we could now use that code to implement support for ZFS in the Linux kernel.&lt;/i&gt;&quot;  Alan Cox &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2008/7/17/2553314&quot;&gt;explained&lt;/a&gt;, &quot;&lt;i&gt;no we can&#039;t. The GPL ZFS bits don&#039;t include the various methods that would violate the patent so there is no grant. I&#039;ve several times asked Sun to simply give permission and they don&#039;t even answer. I can only read the Sun motivation one way - they want to look open but know that ZFS is about the only thing that might save Solaris as a product in the data centre so are not truly prepared to let Linus use it.&lt;/i&gt;&quot;  H. Peter Anvin added, &quot;&lt;i&gt;from what I can see, it is an absolutely-minimal read only implementation.&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;Christoph Hellwig offered, &quot;&lt;i&gt;adding a read-only for the start zfs driver for Linux would be useful for various purposes.  And adding read-only filesystems to Linux is really easy.&lt;/i&gt;&quot;  Referring to the individual who started the discussion, he added, &quot;&lt;i&gt;if Fred really cares about it I&#039;d be very happy to mentor him implementing it.  It should be a very good learning exercise for him.&lt;/i&gt;&quot;  When asked if this offer applied to anyone else, Christoph replied, &quot;&lt;i&gt;yes, this offer is of course up to everyone interested.  But it&#039;s not purely an integration effort in the traditional sense, the grub filesystem interface is quite different from the Linux one, and the code structure and style is quite different.  But if you&#039;re willing to learn it should be very interesting.&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/Proposing_Read-Only_ZFS&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/Proposing_Read-Only_ZFS#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/Christoph_Hellwig">Christoph Hellwig</category>
 <category domain="http://www.kerneltrap.org/filesystem">filesystem</category>
 <category domain="http://www.kerneltrap.org/H_Peter_Anvin">H. Peter Anvin</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/236">Sun</category>
 <category domain="http://www.kerneltrap.org/ZFS">ZFS</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Wed, 23 Jul 2008 01:42:57 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16420 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Removing the Big Kernel Lock</title>
 <link>http://www.kerneltrap.org/Linux/Removing_the_Big_Kernel_Lock</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;&quot;&lt;i&gt;As some of the latency junkies on lkml already know, commit 8e3e076 in v2.6.26-rc2 removed the preemptible BKL feature and made the Big Kernel Lock a spinlock and thus turned it into non-preemptible code again. This commit returned the BKL code to the 2.6.7 state of affairs in essence,&lt;/i&gt;&quot; &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2008/5/14/1821774&quot;&gt;began Ingo Molnar&lt;/a&gt;.  He noted that this had a very negative effect on the real time kernel efforts, adding that Linux creator Linus Torvalds indicated the only acceptable way forward was to completely remove the BKL.  Ingo explained:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;This task is not easy at all. 12 years after Linux has been converted to an SMP OS we still have 1300+ legacy BKL using sites. There are 400+ lock_kernel() critical sections and 800+ ioctls. They are spread out across rather difficult areas of often legacy code that few people understand and few people dare to touch.  It takes top people like Alan Cox to map the semantics and to remove BKL code, and even for Alan (who is doing this for the TTY code) it is a long and difficult task.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;Ingo went on to describe how the BKL works, how it differs from other locking mechanisms, and why this complicates removing it permanently from the kernel.  He noted that the various dependencies of the lock are lost in the haze of 15 years of code changes, &quot;&lt;i&gt;all this has built up to a kind of Fear, Uncertainty and Doubt about the BKL: nobody really knows it, nobody really dares to touch it and code can break silently and subtly if BKL locking is wrong.&lt;/i&gt;&quot;  He then suggested &quot;changing the rules of the game&quot;, creating a &quot;kill-the-BKL&quot; branch which &quot;&lt;i&gt;turns the BKL into an ordinary albeit somewhat big mutex, with a quirky lock/unlock interface called &#039;lock_kernel()&#039; and &#039;unlock_kernel()&#039;.&quot;&lt;/i&gt;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://www.kerneltrap.org/Linux/Removing_the_Big_Kernel_Lock&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://www.kerneltrap.org/Linux/Removing_the_Big_Kernel_Lock#comments</comments>
 <category domain="http://www.kerneltrap.org/2.6.26-rc2">2.6.26-rc2</category>
 <category domain="http://www.kerneltrap.org/2.6.7">2.6.7</category>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/BKL">BKL</category>
 <category domain="http://www.kerneltrap.org/Ingo_Molnar">Ingo Molnar</category>
 <category domain="http://www.kerneltrap.org/Linus_Torvalds">Linus Torvalds</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Thu, 15 May 2008 15:52:29 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">16137 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: They Have All The Source Code But We Don&#039;t Have Theirs</title>
 <link>http://www.kerneltrap.org/Quote/They_Have_All_The_Source_Code_But_We_Dont_Have_Theirs</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;Any problems beyond that point are ones you need to take up with Nvidia as they have all the source code but we don&#039;t have theirs.&quot;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;</description>
 <comments>http://www.kerneltrap.org/Quote/They_Have_All_The_Source_Code_But_We_Dont_Have_Theirs#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/614">NVIDIA</category>
 <category domain="http://www.kerneltrap.org/quote">quote</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1102">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1094">linux-kernel</category>
 <pubDate>Wed, 26 Mar 2008 14:41:40 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15860 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: If You Wrote Code, I&#039;d Be Worried</title>
 <link>http://www.kerneltrap.org/Quote/If_You_Wrote_Code_Id_Be_Worried</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;I&#039;m so glad you have nothing better to do than troll, if you actually wrote code I&#039;d be worried it might get into something people used.&quot;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;</description>
 <comments>http://www.kerneltrap.org/Quote/If_You_Wrote_Code_Id_Be_Worried#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/flames">flames</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/quote">quote</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1102">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1094">linux-kernel</category>
 <pubDate>Thu, 17 Jan 2008 13:24:03 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15251 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: Repeatedly Posting Crud</title>
 <link>http://www.kerneltrap.org/Quote/Repeatedly_Posting_Crud</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;&quot;Repeatedly posting crud does not make it right.&quot;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;</description>
 <comments>http://www.kerneltrap.org/Quote/Repeatedly_Posting_Crud#comments</comments>
 <category domain="http://www.kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/Linux">Linux</category>
 <category domain="http://www.kerneltrap.org/quote">quote</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1102">Alan Cox</category>
 <category domain="http://www.kerneltrap.org/taxonomy/term/1094">linux-kernel</category>
 <pubDate>Thu, 03 Jan 2008 06:41:13 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">15108 at http://www.kerneltrap.org</guid>
</item>
<item>
 <title>Quote: Time For An -ac Tree Again</title>
 <link>http://www.kerneltrap.org/Quote/Time_For_An_-ac_T