<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xml:base="http://kerneltrap.org"  xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
 <title>KernelTrap - Linux</title>
 <link>http://kerneltrap.org/taxonomy/term/187/0</link>
 <description></description>
 <language>en-local</language>
<item>
 <title>syscall interception module on 2.6.32 </title>
 <link>http://kerneltrap.org/node/59303</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Hi,&lt;/p&gt;
&lt;p&gt;I am using the following kernel module to intercept some syscalls. I have got sys_call_table address from the /boot/System.map.x.x. The module works file on Ubuntu 7.10 (2.6.24) but gets killed upon insmod in Ubuntu 10.04 and Fedora 12 (2.6.32) with error &quot;Kernel paging request error address c0xxxxx [which is, based on System.map, an address in sys_call_table]&quot;.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/node/59303&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/node/59303#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/189">Kernel</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/171">Linux kernel</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4513">system call interception</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4503">sys_call_table</category>
 <pubDate>Sat, 08 May 2010 14:00:15 +0000</pubDate>
 <dc:creator>saliari2</dc:creator>
 <guid isPermaLink="false">59303 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Problem with sock_create in KLM</title>
 <link>http://kerneltrap.org/node/56923</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/171&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/files/category_pictures_0&quot; alt=&quot;Linux&quot; title=&quot;Linux&quot;  width=&quot;&quot; height=&quot;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Hello, i am dealing with studiing kernel module. As example i am using block device from lwn&lt;br /&gt;
&lt;a href=&quot;http://lwn.net/Articles/58719/&quot; title=&quot;http://lwn.net/Articles/58719/&quot;&gt;http://lwn.net/Articles/58719/&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;and so far so good, but i am trying to create simple network disk (just for test, ...) &lt;/p&gt;
&lt;p&gt;I found this article.&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://www.linuxjournal.com/node/7660&quot; title=&quot;http://www.linuxjournal.com/node/7660&quot;&gt;http://www.linuxjournal.com/node/7660&lt;/a&gt;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/node/56923&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/node/56923#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/4353">kernel module</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/171">Linux kernel</category>
 <category domain="http://kerneltrap.org/networking">networking</category>
 <pubDate>Sun, 18 Apr 2010 22:05:12 +0000</pubDate>
 <dc:creator />
 <guid isPermaLink="false">56923 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Linux: 2.6.34-rc4, &quot;Hunting A Really Annoying VM Regression&quot;</title>
 <link>http://kerneltrap.org/Linux/2.6.34-rc4_Hunting_A_Really_Annoying_VM_Regression</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;em&gt;It&#039;s been two weeks rather than the usual one, because we&#039;ve been hunting a really annoying VM regression that not a lot of people seem to have seen, but I didn&#039;t want to release an -rc4 with it,&lt;/em&gt;&quot; &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2010/4/13/4558076&quot;&gt;began Linux creator Linus Torvalds&lt;/a&gt;, announcing the &lt;a href=&quot;http://kerneltrap.org/mailarchive/git-commits-head/2010/4/13/31838&quot;&gt;2.6.34-rc4&lt;/a&gt; Linux kernel.  He explained, &quot;&lt;i&gt;we had the choice of either reverting all the anon-vma scalability improvements, or finding out exactly what caused the regression and fixing it.  And we got pretty close to the point where I was going to just revert it all.&lt;/i&gt;&quot;  Linus continued:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;Absolutely _huge_ kudos to Borislav Petkov who reported the problem and was able to not just reliably reproduce it, but also test new patches to try to narrow things down at a moments notice. The thing took ten days of emails flying back and forth, and Borislav was there all the time, day and night, through several patches that tried to fix it (several real bugs, but not the one he hit) and lots of patches to just add instrumentation to get us nearer to the cause of the problem.  And finally, today, confirmation that we actually nailed the problem. So  if anybody has been seeing a oops (or sometimes a GP fault) in  page_referenced(), that should be gone now.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;p&gt;As for the rest of the changes, Linus noted, &quot;&lt;em&gt;the bulk of the changes come from drivers - a new network driver (cxgb4), but also updates to the radeon and nouveau drivers.  And then there is the random updates everywhere.&lt;/em&gt;&quot;  Read on for the full changelog.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/2.6.34-rc4_Hunting_A_Really_Annoying_VM_Regression&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/2.6.34-rc4_Hunting_A_Really_Annoying_VM_Regression#comments</comments>
 <category domain="http://kerneltrap.org/-rc">-rc</category>
 <category domain="http://kerneltrap.org/taxonomy/term/539">-rc4</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4263">2.6.34</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4253">Borislav Petkov</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4273">cxgb4</category>
 <category domain="http://kerneltrap.org/Linus_Torvalds">Linus Torvalds</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4293">nouveau</category>
 <category domain="http://kerneltrap.org/taxonomy/term/4283">radeon</category>
 <category domain="http://kerneltrap.org/taxonomy/term/278">regressions</category>
 <category domain="http://kerneltrap.org/taxonomy/term/456">vm</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Tue, 13 Apr 2010 05:16:30 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">56443 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Linux: Memory Compaction </title>
 <link>http://kerneltrap.org/Linux/Memory_Compaction</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/Mel_Gorman&quot;&gt;Mel Gorman&lt;/a&gt; posted the &lt;a href=&quot;http://kerneltrap.org/mailarchive/linux-kernel/2010/4/2/4554850&quot;&gt;seventh version&lt;/a&gt; of his Memory Compaction patches asking, &quot;&lt;i&gt;are there any further obstacles to merging?&lt;/i&gt;&quot;  The patches, &lt;a href=&quot;http://kerneltrap.org/node/8292&quot;&gt;first posted&lt;/a&gt; in May of 2007, provide a mechanism for moving GFP_MOVABLE pages into a smaller number of pageblocks, reducing externally fragmented memory.  Mel explains that &#039;compaction&#039; is another method of defragmenting memory, &quot;&lt;i&gt;for example, lumpy reclaim is a form of defragmentation as was slub &#039;defragmentation&#039; (really a form of targeted reclaim). Hence, this is called &#039;compaction&#039; to distinguish it from other forms of defragmentation.&lt;/i&gt;&quot;&lt;/p&gt;
&lt;p&gt;The core compaction patch explains that memory is compacted in a zone by relocating movable pages towards the end of the zone:&lt;/p&gt;
&lt;blockquote&gt;&lt;p&gt;&quot;A single compaction run involves a migration scanner and a free scanner.  Both scanners operate on pageblock-sized areas in the zone. The migration scanner starts at the bottom of the zone and searches for all movable pages within each area, isolating them onto a private list called migratelist.  The free scanner starts at the top of the zone and searches for suitable areas and consumes the free pages within making them available for the migration scanner. The pages isolated for migration are then migrated to the newly isolated free pages.&quot;&lt;/p&gt;&lt;/blockquote&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/Linux/Memory_Compaction&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/Linux/Memory_Compaction#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/251">compacting memory</category>
 <category domain="http://kerneltrap.org/taxonomy/term/866">defragmentation</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/mel_gorman">Mel Gorman</category>
 <category domain="http://kerneltrap.org/memory">memory</category>
 <category domain="http://kerneltrap.org/taxonomy/term/583">patch</category>
 <category domain="http://kerneltrap.org/taxonomy/term/477">RAM</category>
 <category domain="http://kerneltrap.org/news/linux">Linux news</category>
 <pubDate>Sat, 03 Apr 2010 00:11:38 +0000</pubDate>
 <dc:creator>Jeremy</dc:creator>
 <guid isPermaLink="false">55793 at http://kerneltrap.org</guid>
</item>
<item>
 <title>Linux: Removing The Big Kernel Lock</title>
 <link>http://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://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://kerneltrap.org/Linux/Removing_The_Big_Kernel_Lock2#comments</comments>
 <category domain="http://kerneltrap.org/Alan_Cox">Alan Cox</category>
 <category domain="http://kerneltrap.org/Andrew_Morton">Andrew Morton</category>
 <category domain="http://kerneltrap.org/taxonomy/term/1274">Arnd Bergmann</category>
 <category domain="http://kerneltrap.org/BKL">BKL</category>
 <category domain="http://kerneltrap.org/Ingo_Molnar">Ingo Molnar</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://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://kerneltrap.org</guid>
</item>
<item>
 <title>[SATA]  errors writing to DVD-RAM with imperfect media</title>
 <link>http://kerneltrap.org/node/49513</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/171&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/files/category_pictures_0&quot; alt=&quot;Linux&quot; title=&quot;Linux&quot;  width=&quot;&quot; height=&quot;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Hi,&lt;br /&gt;
Writing to DVD-RAM is causing me grief.&lt;br /&gt;
For testing I&#039;ve been using a purpose built Gentoo system, X64, Phenom II CPU (3 cores).&lt;br /&gt;
The MB uses the AMD SB700/SB800 AHCI chipset.&lt;br /&gt;
I have installed a PCI-e AHCI controller with a JMicron chipset to confirm its not chipset related.&lt;br /&gt;
The drive is a new LG model. I&#039;ve tried a older LG and an old Asus.&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/node/49513&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/node/49513#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/3583">AHCI</category>
 <category domain="http://kerneltrap.org/taxonomy/term/3563">DVD-RAM</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/171">Linux kernel</category>
 <category domain="http://kerneltrap.org/taxonomy/term/3593">media error</category>
 <category domain="http://kerneltrap.org/taxonomy/term/3573">SATA</category>
 <pubDate>Mon, 21 Dec 2009 08:36:50 +0000</pubDate>
 <dc:creator>hisdad</dc:creator>
 <guid isPermaLink="false">49513 at http://kerneltrap.org</guid>
</item>
<item>
 <title>memleak in fs/char_dev.c : alloc_chrdev_region?</title>
 <link>http://kerneltrap.org/node/48523</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/171&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/files/category_pictures_0&quot; alt=&quot;Linux&quot; title=&quot;Linux&quot;  width=&quot;&quot; height=&quot;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;snippet:&lt;br /&gt;
&lt;code&gt;&lt;br /&gt;
int alloc_chrdev_region(dev_t *dev, unsigned baseminor, unsigned count,&lt;br /&gt;
            const char *name)&lt;br /&gt;
{&lt;br /&gt;
    struct char_device_struct *cd;&lt;br /&gt;
    cd = __register_chrdev_region(0, baseminor, count, name);&lt;br /&gt;
    if (IS_ERR(cd))&lt;br /&gt;
        return PTR_ERR(cd);&lt;br /&gt;
    *dev = MKDEV(cd-&amp;gt;major, cd-&amp;gt;baseminor);&lt;br /&gt;
    return 0;&lt;br /&gt;
}&lt;br /&gt;
&lt;/code&gt;&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/node/48523&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/node/48523#comments</comments>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/171">Linux kernel</category>
 <category domain="http://kerneltrap.org/taxonomy/term/3513">memleak</category>
 <pubDate>Mon, 07 Dec 2009 12:50:03 +0000</pubDate>
 <dc:creator />
 <guid isPermaLink="false">48523 at http://kerneltrap.org</guid>
</item>
<item>
 <title>The 2009 entry</title>
 <link>http://kerneltrap.org/node/42213</link>
 <description>&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Well, I can clearly see that I maintained things here.  I&#039;m not sure why I don&#039;t blog anymore.  I feel like I have less time these days, and I&#039;m not sure if that&#039;s reality, or if I&#039;m just not very good at time management.  The answer is probably somewhere in the middle.
&lt;/p&gt;
&lt;!-- google_ad_section_end --&gt;&lt;p&gt;&lt;a href=&quot;http://kerneltrap.org/node/42213&quot; target=&quot;_blank&quot;&gt;read more&lt;/a&gt;&lt;/p&gt;</description>
 <comments>http://kerneltrap.org/node/42213#comments</comments>
 <category domain="http://kerneltrap.org/taxonomy/term/1983">Burning Man</category>
 <category domain="http://kerneltrap.org/taxonomy/term/1993">life</category>
 <category domain="http://kerneltrap.org/Linux">Linux</category>
 <category domain="http://kerneltrap.org/taxonomy/term/25">Life</category>
 <pubDate>Wed, 16 Sep 2009 01:51:09 +0000</pubDate>
 <dc:creator>catfeeder</dc:creator>
 <guid isPermaLink="false">42213 at http://kerneltrap.org</guid>
</item>
<item>
 <title>how to get proc_root</title>
 <link>http://kerneltrap.org/node/40753</link>
 <description>&lt;div class=&quot;taxonomy-images&quot;&gt;&lt;a href=&quot;/taxonomy/term/171&quot; class=&quot;taxonomy-image-links&quot;&gt;&lt;img src=&quot;http://kerneltrap.org/files/category_pictures/files/category_pictures_0&quot; alt=&quot;Linux&quot; title=&quot;Linux&quot;  width=&quot;&quot; height=&quot;&quot; /&gt;&lt;/a&gt;&lt;/div&gt;&lt;!-- google_ad_section_start --&gt;&lt;p&gt;Hi, i am trying to hook readdir call in proc filesystem.&lt;/p&gt;
&lt;pre&gt;
        struct file_operations *fops;

	fops = proc_root.proc_fops;
	readdir_old = fops-&amp;gt;readdir;
	fops-&amp;gt;readdir = readdir_new;

       &lt;/pre&gt;&lt;p&gt;
But, proc_root is no longer exported. So, how can I get it?&lt;br /&gt;
(No System.map, /dev/kmem ...)&lt;/p&gt;
&lt;p&gt;Thank you&lt;/p&gt;
&lt;!--