<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/fs, branch linux-2.6.30.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-2.6.30.y</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-2.6.30.y'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2009-10-05T15:28:05Z</updated>
<entry>
<title>/proc/kcore: work around a BUG()</title>
<updated>2009-10-05T15:28:05Z</updated>
<author>
<name>KAMEZAWA Hiroyuki</name>
<email>kamezawa.hiroyu@jp.fujitsu.com</email>
</author>
<published>2009-09-22T00:01:02Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=13cfd8565eeba3c3935b2f23d3cd29af72f96d1c'/>
<id>urn:sha1:13cfd8565eeba3c3935b2f23d3cd29af72f96d1c</id>
<content type='text'>
Not upstream due to other fixes in .32


Works around a BUG() which is triggered when the kernel accesses holes in
vmalloc regions.

BUG: unable to handle kernel paging request at fa54c000
IP: [&lt;c04f687a&gt;] read_kcore+0x260/0x31a
*pde = 3540b067 *pte = 00000000
Oops: 0000 [#1] SMP
last sysfs file: /sys/devices/pci0000:00/0000:00:1c.2/0000:03:00.0/ieee80211/phy0/rfkill0/state
Modules linked in: fuse sco bridge stp llc bnep l2cap bluetooth sunrpc nf_conntrack_ftp ip6t_REJECT nf_conntrack_ipv6 ip6table_filter ip6_tables ipv6 cpufreq_ondemand acpi_cpufreq dm_multipath uinput usb_storage arc4 ecb snd_hda_codec_realtek snd_hda_intel ath5k snd_hda_codec snd_hwdep iTCO_wdt snd_pcm iTCO_vendor_support pcspkr i2c_i801 mac80211 joydev snd_timer serio_raw r8169 snd soundcore mii snd_page_alloc ath cfg80211 ata_generic i915 drm i2c_algo_bit i2c_core video output [last unloaded: scsi_wait_scan]
Sep  4 12:45:16 tuxedu kernel: Pid: 2266, comm: cat Not tainted (2.6.31-rc8 #2) Joybook Lite U101
EIP: 0060:[&lt;c04f687a&gt;] EFLAGS: 00010286 CPU: 0
EIP is at read_kcore+0x260/0x31a
EAX: f5e5ea00 EBX: fa54d000 ECX: 00000400 EDX: 00001000
ESI: fa54c000 EDI: f44ad000 EBP: e4533f4c ESP: e4533f24
DS: 007b ES: 007b FS: 00d8 GS: 0033 SS: 0068
Process cat (pid: 2266, ti=e4532000 task=f09d19a0 task.ti=e4532000)
Stack:
00005000 00000000 f44ad000 09d9c000 00003000 fa54c000 00001000 f6d16f60
 e4520b80 fffffffb e4533f70 c04ef8eb e4533f98 00008000 09d97000 c04f661a
 e4520b80 09d97000 c04ef88c e4533f8c c04ba531 e4533f98 c04c0930 e4520b80
Call Trace:
[&lt;c04ef8eb&gt;] ? proc_reg_read+0x5f/0x73
[&lt;c04f661a&gt;] ? read_kcore+0x0/0x31a
[&lt;c04ef88c&gt;] ? proc_reg_read+0x0/0x73
[&lt;c04ba531&gt;] ? vfs_read+0x82/0xe1
[&lt;c04c0930&gt;] ? path_put+0x1a/0x1d
[&lt;c04ba62e&gt;] ? sys_read+0x40/0x62
[&lt;c0403298&gt;] ? sysenter_do_call+0x12/0x2d
Code: 39 f3 89 ca 0f 43 f3 89 fb 29 f2 29 f3 39 cf 0f 46 d3 29 55 dc 8d 1c 32 f6 40 0c 01 75 18 89 d1 89 f7 c1 e9 02 2b 7d ec 03 7d e0 &lt;f3&gt; a5 89 d1 83 e1 03 74 02 f3 a4 8b 00 83 7d dc 00 74 04 85 c0
EIP: [&lt;c04f687a&gt;] read_kcore+0x260/0x31a SS:ESP 0068:e4533f24
CR2: 00000000fa54c000


To access vmalloc area which may have memory holes, copy_from_user is
useful.  So this:

 # cat /proc/kcore &gt; /dev/null

will not panic.

This is a minimal fix, suitable for 2.6.30.x and 2.6.31.  More extensive
/proc/kcore changes are planned for 2.6.32.

Signed-off-by: KAMEZAWA Hiroyuki &lt;kamezawa.hiroyu@jp.fujitsu.com&gt;
Tested-by: Nick Craig-Wood &lt;nick@craig-wood.com&gt;
Cc: Pekka Enberg &lt;penberg@cs.helsinki.fi&gt;
Reported-by: &lt;kbowa@tuxedu.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Fix idle time field in /proc/uptime</title>
<updated>2009-10-05T15:28:03Z</updated>
<author>
<name>Michael Abbott</name>
<email>michael.abbott@diamond.ac.uk</email>
</author>
<published>2009-09-24T08:15:19Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=ec49bc1bdc7c6e92873373ff61206c366d63a50a'/>
<id>urn:sha1:ec49bc1bdc7c6e92873373ff61206c366d63a50a</id>
<content type='text'>
commit 96830a57de1197519b62af6a4c9ceea556c18c3d upstream.

Git commit 79741dd changes idle cputime accounting, but unfortunately
the /proc/uptime file hasn't caught up.  Here the idle time calculation
from /proc/stat is copied over.

Signed-off-by: Michael Abbott &lt;michael.abbott@diamond.ac.uk&gt;
Signed-off-by: Martin Schwidefsky &lt;schwidefsky@de.ibm.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>Re-enable Lanman security</title>
<updated>2009-10-05T15:27:51Z</updated>
<author>
<name>Chuck Ebbert</name>
<email>cebbert@redhat.com</email>
</author>
<published>2009-09-15T05:53:21Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=cb2a1b63162335f8a693fcbd6317e23b675a1970'/>
<id>urn:sha1:cb2a1b63162335f8a693fcbd6317e23b675a1970</id>
<content type='text'>
commit 20d1752f3d6bd32beb90949559e0d14a0b234445 upstream.

commit ac68392460ffefed13020967bae04edc4d3add06 ("[CIFS] Allow raw
ntlmssp code to be enabled with sec=ntlmssp") added a new bit to the
allowed security flags mask but seems to have inadvertently removed
Lanman security from the allowed flags. Add it back.

Signed-off-by: Chuck Ebbert &lt;cebbert@redhat.com&gt;
Signed-off-by: Steve French &lt;sfrench@us.ibm.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>nilfs2: fix missing zero-fill initialization of btree node cache</title>
<updated>2009-10-05T15:27:48Z</updated>
<author>
<name>Ryusuke Konishi</name>
<email>konishi.ryusuke@lab.ntt.co.jp</email>
</author>
<published>2009-09-27T16:46:11Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=b268e3922e96d65d69934636442d89cf553d36c2'/>
<id>urn:sha1:b268e3922e96d65d69934636442d89cf553d36c2</id>
<content type='text'>
commit 1f28fcd925b2b3157411bbd08f0024b55b70d8dd upstream.

This will fix file system corruption which infrequently happens after
mount.  The problem was reported from users with the title "[NILFS
users] Fail to mount NILFS." (Message-ID:
&lt;200908211918.34720.yuri@itinteg.net&gt;), and so forth.  I've also
experienced the corruption multiple times on kernel 2.6.30 and 2.6.31.

The problem turned out to be caused due to discordance between
mapping-&gt;nrpages of a btree node cache and the actual number of pages
hung on the cache; if the mapping-&gt;nrpages becomes zero even as it has
pages, truncate_inode_pages() returns without doing anything.  Usually
this is harmless except it may cause page leak, but garbage collection
fairly infrequently sees a stale page remained in the btree node cache
of DAT (i.e. disk address translation file of nilfs), and induces the
corruption.

I identified a missing initialization in btree node caches was the
root cause.  This corrects the bug.

I've tested this for kernel 2.6.30 and 2.6.31.

Reported-by: Yuri Chislov &lt;yuri@itinteg.net&gt;
Signed-off-by: Ryusuke Konishi &lt;konishi.ryusuke@lab.ntt.co.jp&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>fs: make sure data stored into inode is properly seen before unlocking new inode</title>
<updated>2009-10-05T15:27:46Z</updated>
<author>
<name>Jan Kara</name>
<email>jack@suse.cz</email>
</author>
<published>2009-09-22T00:01:06Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=599312c925523beda5d1c4df834a1d94c57e15ba'/>
<id>urn:sha1:599312c925523beda5d1c4df834a1d94c57e15ba</id>
<content type='text'>
commit 580be0837a7a59b207c3d5c661d044d8dd0a6a30 upstream.

In theory it could happen that on one CPU we initialize a new inode but
clearing of I_NEW | I_LOCK gets reordered before some of the
initialization.  Thus on another CPU we return not fully uptodate inode
from iget_locked().

This seems to fix a corruption issue on ext3 mounted over NFS.

[akpm@linux-foundation.org: add some commentary]
Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Cc: Christoph Hellwig &lt;hch@infradead.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>udf: Use device size when drive reported bogus number of written blocks</title>
<updated>2009-09-24T15:27:12Z</updated>
<author>
<name>Jan Kara</name>
<email>jack@suse.cz</email>
</author>
<published>2009-06-18T10:33:16Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=5bed4ac47c46cb9425ec1afb090ea3fed2017cbc'/>
<id>urn:sha1:5bed4ac47c46cb9425ec1afb090ea3fed2017cbc</id>
<content type='text'>
commit 24a5d59f3477bcff4c069ff4d0ca9a3e037d0235 upstream.

Some drives report 0 as the number of written blocks when there are some blocks
recorded. Use device size in such case so that we can automagically mount such
media.

Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>binfmt_elf: fix PT_INTERP bss handling</title>
<updated>2009-09-24T15:27:09Z</updated>
<author>
<name>Roland McGrath</name>
<email>roland@redhat.com</email>
</author>
<published>2009-09-09T02:49:40Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=1cb8fc89d73a27843d76c27974755df1f954e18c'/>
<id>urn:sha1:1cb8fc89d73a27843d76c27974755df1f954e18c</id>
<content type='text'>
commit 9f0ab4a3f0fdb1ff404d150618ace2fa069bb2e1 upstream.

In fs/binfmt_elf.c, load_elf_interp() calls padzero() for .bss even if
the PT_LOAD has no PROT_WRITE and no .bss.  This generates EFAULT.

Here is a small test case.  (Yes, there are other, useful PT_INTERP
which have only .text and no .data/.bss.)

	----- ptinterp.S
	_start: .globl _start
		 nop
		 int3
	-----
	$ gcc -m32 -nostartfiles -nostdlib -o ptinterp ptinterp.S
	$ gcc -m32 -Wl,--dynamic-linker=ptinterp -o hello hello.c
	$ ./hello
	Segmentation fault  # during execve() itself

	After applying the patch:
	$ ./hello
	Trace trap  # user-mode execution after execve() finishes

If the ELF headers are actually self-inconsistent, then dying is fine.
But having no PROT_WRITE segment is perfectly normal and correct if
there is no segment with p_memsz &gt; p_filesz (i.e. bss).  John Reiser
suggested checking for PROT_WRITE in the bss logic.  I think it makes
most sense to simply apply the bss logic only when there is bss.

This patch looks less trivial than it is due to some reindentation.
It just moves the "if (last_bss &gt; elf_bss) {" test up to include the
partial-page bss logic as well as the more-pages bss logic.

Reported-by: John Reiser &lt;jreiser@bitwagon.com&gt;
Signed-off-by: Roland McGrath &lt;roland@redhat.com&gt;
Signed-off-by: James Morris &lt;jmorris@namei.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>nilfs2: fix preempt count underflow in nilfs_btnode_prepare_change_key</title>
<updated>2009-09-15T17:45:25Z</updated>
<author>
<name>Ryusuke Konishi</name>
<email>konishi.ryusuke@lab.ntt.co.jp</email>
</author>
<published>2009-08-29T19:21:41Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=820fdfd8431c2b06723ce2c42806f3cef0ddb2e5'/>
<id>urn:sha1:820fdfd8431c2b06723ce2c42806f3cef0ddb2e5</id>
<content type='text'>
commit b1f1b8ce0a1d71cbc72f7540134d52b79bd8f5ac upstream.

This will fix the following preempt count underflow reported from
users with the title "[NILFS users] segctord problem" (Message-ID:
&lt;949415.6494.qm@web58808.mail.re1.yahoo.com&gt; and Message-ID:
&lt;debc30fc0908270825v747c1734xa59126623cfd5b05@mail.gmail.com&gt;):

 WARNING: at kernel/sched.c:4890 sub_preempt_count+0x95/0xa0()
 Hardware name: HP Compaq 6530b (KR980UT#ABC)
 Modules linked in: bridge stp llc bnep rfcomm l2cap xfs exportfs nilfs2 cowloop loop vboxnetadp vboxnetflt vboxdrv btusb bluetooth uvcvideo videodev v4l1_compat v4l2_compat_ioctl32 arc4 snd_hda_codec_analog ecb iwlagn iwlcore rfkill lib80211 mac80211 snd_hda_intel snd_hda_codec ehci_hcd uhci_hcd usbcore snd_hwdep snd_pcm tg3 cfg80211 psmouse snd_timer joydev libphy ohci1394 snd_page_alloc hp_accel lis3lv02d ieee1394 led_class i915 drm i2c_algo_bit video backlight output i2c_core dm_crypt dm_mod
 Pid: 4197, comm: segctord Not tainted 2.6.30-gentoo-r4-64 #7
 Call Trace:
  [&lt;ffffffff8023fa05&gt;] ? sub_preempt_count+0x95/0xa0
  [&lt;ffffffff802470f8&gt;] warn_slowpath_common+0x78/0xd0
  [&lt;ffffffff8024715f&gt;] warn_slowpath_null+0xf/0x20
  [&lt;ffffffff8023fa05&gt;] sub_preempt_count+0x95/0xa0
  [&lt;ffffffffa04ce4db&gt;] nilfs_btnode_prepare_change_key+0x11b/0x190 [nilfs2]
  [&lt;ffffffffa04d01ad&gt;] nilfs_btree_assign_p+0x19d/0x1e0 [nilfs2]
  [&lt;ffffffffa04d10ad&gt;] nilfs_btree_assign+0xbd/0x130 [nilfs2]
  [&lt;ffffffffa04cead7&gt;] nilfs_bmap_assign+0x47/0x70 [nilfs2]
  [&lt;ffffffffa04d9bc6&gt;] nilfs_segctor_do_construct+0x956/0x20f0 [nilfs2]
  [&lt;ffffffff805ac8e2&gt;] ? _spin_unlock_irqrestore+0x12/0x40
  [&lt;ffffffff803c06e0&gt;] ? __up_write+0xe0/0x150
  [&lt;ffffffff80262959&gt;] ? up_write+0x9/0x10
  [&lt;ffffffffa04ce9f3&gt;] ? nilfs_bmap_test_and_clear_dirty+0x43/0x60 [nilfs2]
  [&lt;ffffffffa04cd627&gt;] ? nilfs_mdt_fetch_dirty+0x27/0x60 [nilfs2]
  [&lt;ffffffffa04db5fc&gt;] nilfs_segctor_construct+0x8c/0xd0 [nilfs2]
  [&lt;ffffffffa04dc3dc&gt;] nilfs_segctor_thread+0x15c/0x3a0 [nilfs2]
  [&lt;ffffffffa04dbe20&gt;] ? nilfs_construction_timeout+0x0/0x10 [nilfs2]
  [&lt;ffffffff80252633&gt;] ? add_timer+0x13/0x20
  [&lt;ffffffff802370da&gt;] ? __wake_up_common+0x5a/0x90
  [&lt;ffffffff8025e960&gt;] ? autoremove_wake_function+0x0/0x40
  [&lt;ffffffffa04dc280&gt;] ? nilfs_segctor_thread+0x0/0x3a0 [nilfs2]
  [&lt;ffffffffa04dc280&gt;] ? nilfs_segctor_thread+0x0/0x3a0 [nilfs2]
  [&lt;ffffffff8025e556&gt;] kthread+0x56/0x90
  [&lt;ffffffff8020cdea&gt;] child_rip+0xa/0x20
  [&lt;ffffffff8025e500&gt;] ? kthread+0x0/0x90
  [&lt;ffffffff8020cde0&gt;] ? child_rip+0x0/0x20

This problem was caused due to a missing radix_tree_preload() call in
the retry path of nilfs_btnode_prepare_change_key() function.

Reported-by: Eric A &lt;eric225125@yahoo.com&gt;
Reported-by: Jerome Poulin &lt;jeromepoulin@gmail.com&gt;
Signed-off-by: Ryusuke Konishi &lt;konishi.ryusuke@lab.ntt.co.jp&gt;
Tested-by: Jerome Poulin &lt;jeromepoulin@gmail.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>JFFS2: add missing verify buffer allocation/deallocation</title>
<updated>2009-09-15T17:45:23Z</updated>
<author>
<name>Massimo Cirillo</name>
<email>maxcir@gmail.com</email>
</author>
<published>2009-08-27T08:44:09Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=6c135b4e133017a8aeef1534107ee4b1f11d3265'/>
<id>urn:sha1:6c135b4e133017a8aeef1534107ee4b1f11d3265</id>
<content type='text'>
commit bc8cec0dff072f1a45ce7f6b2c5234bb3411ac51 upstream.

The function jffs2_nor_wbuf_flash_setup() doesn't allocate the verify buffer
if CONFIG_JFFS2_FS_WBUF_VERIFY is defined, so causing a kernel panic when
that macro is enabled and the verify function is called. Similarly the
jffs2_nor_wbuf_flash_cleanup() must free the buffer if
CONFIG_JFFS2_FS_WBUF_VERIFY is enabled.
The following patch fixes the problem.
The following patch applies to 2.6.30 kernel.

Signed-off-by: Massimo Cirillo &lt;maxcir@gmail.com&gt;
Signed-off-by: Artem Bityutskiy &lt;Artem.Bityutskiy@nokia.com&gt;
Signed-off-by: David Woodhouse &lt;David.Woodhouse@intel.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
<entry>
<title>ocfs2: ocfs2_write_begin_nolock() should handle len=0</title>
<updated>2009-09-09T03:34:12Z</updated>
<author>
<name>Sunil Mushran</name>
<email>sunil.mushran@oracle.com</email>
</author>
<published>2009-09-04T18:12:01Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=e38d22518cad8f3e1805bf17482b8bd2a5ec7de0'/>
<id>urn:sha1:e38d22518cad8f3e1805bf17482b8bd2a5ec7de0</id>
<content type='text'>
commit 8379e7c46cc48f51197dd663fc6676f47f2a1e71 upstream.

Bug introduced by mainline commit e7432675f8ca868a4af365759a8d4c3779a3d922
The bug causes ocfs2_write_begin_nolock() to oops when len=0.

Signed-off-by: Sunil Mushran &lt;sunil.mushran@oracle.com&gt;
Signed-off-by: Joel Becker &lt;joel.becker@oracle.com&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;

</content>
</entry>
</feed>
