<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux.git/fs, branch v3.0-rc6</title>
<subtitle>Linux kernel source tree</subtitle>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/'/>
<entry>
<title>cifs: set socket send and receive timeouts before attempting connect</title>
<updated>2011-07-01T16:15:30+00:00</updated>
<author>
<name>Jeff Layton</name>
<email>jlayton@redhat.com</email>
</author>
<published>2011-06-21T11:18:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=ee1b3ea9e6171d7a842527a44873f9f51e6f239b'/>
<id>ee1b3ea9e6171d7a842527a44873f9f51e6f239b</id>
<content type='text'>
Benjamin S. reported that he was unable to suspend his machine while
it had a cifs share mounted. The freezer caused this to spew when he
tried it:

-----------------------[snip]------------------
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.01 seconds) done.
Freezing remaining freezable tasks ...
Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0):
cifsd         S ffff880127f7b1b0     0  1821      2 0x00800000
 ffff880127f7b1b0 0000000000000046 ffff88005fe008a8 ffff8800ffffffff
 ffff880127cee6b0 0000000000011100 ffff880127737fd8 0000000000004000
 ffff880127737fd8 0000000000011100 ffff880127f7b1b0 ffff880127736010
Call Trace:
 [&lt;ffffffff811e85dd&gt;] ? sk_reset_timer+0xf/0x19
 [&lt;ffffffff8122cf3f&gt;] ? tcp_connect+0x43c/0x445
 [&lt;ffffffff8123374e&gt;] ? tcp_v4_connect+0x40d/0x47f
 [&lt;ffffffff8126ce41&gt;] ? schedule_timeout+0x21/0x1ad
 [&lt;ffffffff8126e358&gt;] ? _raw_spin_lock_bh+0x9/0x1f
 [&lt;ffffffff811e81c7&gt;] ? release_sock+0x19/0xef
 [&lt;ffffffff8123e8be&gt;] ? inet_stream_connect+0x14c/0x24a
 [&lt;ffffffff8104485b&gt;] ? autoremove_wake_function+0x0/0x2a
 [&lt;ffffffffa02ccfe2&gt;] ? ipv4_connect+0x39c/0x3b5 [cifs]
 [&lt;ffffffffa02cd7b7&gt;] ? cifs_reconnect+0x1fc/0x28a [cifs]
 [&lt;ffffffffa02cdbdc&gt;] ? cifs_demultiplex_thread+0x397/0xb9f [cifs]
 [&lt;ffffffff81076afc&gt;] ? perf_event_exit_task+0xb9/0x1bf
 [&lt;ffffffffa02cd845&gt;] ? cifs_demultiplex_thread+0x0/0xb9f [cifs]
 [&lt;ffffffffa02cd845&gt;] ? cifs_demultiplex_thread+0x0/0xb9f [cifs]
 [&lt;ffffffff810444a1&gt;] ? kthread+0x7a/0x82
 [&lt;ffffffff81002d14&gt;] ? kernel_thread_helper+0x4/0x10
 [&lt;ffffffff81044427&gt;] ? kthread+0x0/0x82
 [&lt;ffffffff81002d10&gt;] ? kernel_thread_helper+0x0/0x10

Restarting tasks ... done.
-----------------------[snip]------------------

We do attempt to perform a try_to_freeze in cifs_reconnect, but the
connection attempt itself seems to be taking longer than 20s to time
out. The connect timeout is governed by the socket send and receive
timeouts, so we can shorten that period by setting those timeouts
before attempting the connect instead of after.

Adam Williamson tested the patch and said that it seems to have fixed
suspending on his laptop when a cifs share is mounted.

Reported-by: Benjamin S &lt;da_joind@gmx.net&gt;
Tested-by: Adam Williamson &lt;awilliam@redhat.com&gt;
Signed-off-by: Jeff Layton &lt;jlayton@redhat.com&gt;
Signed-off-by: Steve French &lt;sfrench@us.ibm.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Benjamin S. reported that he was unable to suspend his machine while
it had a cifs share mounted. The freezer caused this to spew when he
tried it:

-----------------------[snip]------------------
PM: Syncing filesystems ... done.
Freezing user space processes ... (elapsed 0.01 seconds) done.
Freezing remaining freezable tasks ...
Freezing of tasks failed after 20.01 seconds (1 tasks refusing to freeze, wq_busy=0):
cifsd         S ffff880127f7b1b0     0  1821      2 0x00800000
 ffff880127f7b1b0 0000000000000046 ffff88005fe008a8 ffff8800ffffffff
 ffff880127cee6b0 0000000000011100 ffff880127737fd8 0000000000004000
 ffff880127737fd8 0000000000011100 ffff880127f7b1b0 ffff880127736010
Call Trace:
 [&lt;ffffffff811e85dd&gt;] ? sk_reset_timer+0xf/0x19
 [&lt;ffffffff8122cf3f&gt;] ? tcp_connect+0x43c/0x445
 [&lt;ffffffff8123374e&gt;] ? tcp_v4_connect+0x40d/0x47f
 [&lt;ffffffff8126ce41&gt;] ? schedule_timeout+0x21/0x1ad
 [&lt;ffffffff8126e358&gt;] ? _raw_spin_lock_bh+0x9/0x1f
 [&lt;ffffffff811e81c7&gt;] ? release_sock+0x19/0xef
 [&lt;ffffffff8123e8be&gt;] ? inet_stream_connect+0x14c/0x24a
 [&lt;ffffffff8104485b&gt;] ? autoremove_wake_function+0x0/0x2a
 [&lt;ffffffffa02ccfe2&gt;] ? ipv4_connect+0x39c/0x3b5 [cifs]
 [&lt;ffffffffa02cd7b7&gt;] ? cifs_reconnect+0x1fc/0x28a [cifs]
 [&lt;ffffffffa02cdbdc&gt;] ? cifs_demultiplex_thread+0x397/0xb9f [cifs]
 [&lt;ffffffff81076afc&gt;] ? perf_event_exit_task+0xb9/0x1bf
 [&lt;ffffffffa02cd845&gt;] ? cifs_demultiplex_thread+0x0/0xb9f [cifs]
 [&lt;ffffffffa02cd845&gt;] ? cifs_demultiplex_thread+0x0/0xb9f [cifs]
 [&lt;ffffffff810444a1&gt;] ? kthread+0x7a/0x82
 [&lt;ffffffff81002d14&gt;] ? kernel_thread_helper+0x4/0x10
 [&lt;ffffffff81044427&gt;] ? kthread+0x0/0x82
 [&lt;ffffffff81002d10&gt;] ? kernel_thread_helper+0x0/0x10

Restarting tasks ... done.
-----------------------[snip]------------------

We do attempt to perform a try_to_freeze in cifs_reconnect, but the
connection attempt itself seems to be taking longer than 20s to time
out. The connect timeout is governed by the socket send and receive
timeouts, so we can shorten that period by setting those timeouts
before attempting the connect instead of after.

Adam Williamson tested the patch and said that it seems to have fixed
suspending on his laptop when a cifs share is mounted.

Reported-by: Benjamin S &lt;da_joind@gmx.net&gt;
Tested-by: Adam Williamson &lt;awilliam@redhat.com&gt;
Signed-off-by: Jeff Layton &lt;jlayton@redhat.com&gt;
Signed-off-by: Steve French &lt;sfrench@us.ibm.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>proc: restrict access to /proc/PID/io</title>
<updated>2011-06-28T16:39:11+00:00</updated>
<author>
<name>Vasiliy Kulikov</name>
<email>segoon@openwall.com</email>
</author>
<published>2011-06-24T12:08:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=1d1221f375c94ef961ba8574ac4f85c8870ddd51'/>
<id>1d1221f375c94ef961ba8574ac4f85c8870ddd51</id>
<content type='text'>
/proc/PID/io may be used for gathering private information.  E.g.  for
openssh and vsftpd daemons wchars/rchars may be used to learn the
precise password length.  Restrict it to processes being able to ptrace
the target process.

ptrace_may_access() is needed to prevent keeping open file descriptor of
"io" file, executing setuid binary and gathering io information of the
setuid'ed process.

Signed-off-by: Vasiliy Kulikov &lt;segoon@openwall.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
/proc/PID/io may be used for gathering private information.  E.g.  for
openssh and vsftpd daemons wchars/rchars may be used to learn the
precise password length.  Restrict it to processes being able to ptrace
the target process.

ptrace_may_access() is needed to prevent keeping open file descriptor of
"io" file, executing setuid binary and gathering io information of the
setuid'ed process.

Signed-off-by: Vasiliy Kulikov &lt;segoon@openwall.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mm: fix assertion mapping-&gt;nrpages == 0 in end_writeback()</title>
<updated>2011-06-28T01:00:13+00:00</updated>
<author>
<name>Jan Kara</name>
<email>jack@suse.cz</email>
</author>
<published>2011-06-27T23:18:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=08142579b6ca35883c1ed066a2681de6f6917062'/>
<id>08142579b6ca35883c1ed066a2681de6f6917062</id>
<content type='text'>
Under heavy memory and filesystem load, users observe the assertion
mapping-&gt;nrpages == 0 in end_writeback() trigger.  This can be caused by
page reclaim reclaiming the last page from a mapping in the following
race:

	CPU0				CPU1
  ...
  shrink_page_list()
    __remove_mapping()
      __delete_from_page_cache()
        radix_tree_delete()
					evict_inode()
					  truncate_inode_pages()
					    truncate_inode_pages_range()
					      pagevec_lookup() - finds nothing
					  end_writeback()
					    mapping-&gt;nrpages != 0 -&gt; BUG
        page-&gt;mapping = NULL
        mapping-&gt;nrpages--

Fix the problem by doing a reliable check of mapping-&gt;nrpages under
mapping-&gt;tree_lock in end_writeback().

Analyzed by Jay &lt;jinshan.xiong@whamcloud.com&gt;, lost in LKML, and dug out
by Miklos Szeredi &lt;mszeredi@suse.de&gt;.

Cc: Jay &lt;jinshan.xiong@whamcloud.com&gt;
Cc: Miklos Szeredi &lt;mszeredi@suse.de&gt;
Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Under heavy memory and filesystem load, users observe the assertion
mapping-&gt;nrpages == 0 in end_writeback() trigger.  This can be caused by
page reclaim reclaiming the last page from a mapping in the following
race:

	CPU0				CPU1
  ...
  shrink_page_list()
    __remove_mapping()
      __delete_from_page_cache()
        radix_tree_delete()
					evict_inode()
					  truncate_inode_pages()
					    truncate_inode_pages_range()
					      pagevec_lookup() - finds nothing
					  end_writeback()
					    mapping-&gt;nrpages != 0 -&gt; BUG
        page-&gt;mapping = NULL
        mapping-&gt;nrpages--

Fix the problem by doing a reliable check of mapping-&gt;nrpages under
mapping-&gt;tree_lock in end_writeback().

Analyzed by Jay &lt;jinshan.xiong@whamcloud.com&gt;, lost in LKML, and dug out
by Miklos Szeredi &lt;mszeredi@suse.de&gt;.

Cc: Jay &lt;jinshan.xiong@whamcloud.com&gt;
Cc: Miklos Szeredi &lt;mszeredi@suse.de&gt;
Signed-off-by: Jan Kara &lt;jack@suse.cz&gt;
Cc: &lt;stable@kernel.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>romfs: fix romfs_get_unmapped_area() argument check</title>
<updated>2011-06-28T01:00:12+00:00</updated>
<author>
<name>Bob Liu</name>
<email>lliubbo@gmail.com</email>
</author>
<published>2011-06-27T23:18:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=2b4b2482e70eba10dd98653a3a5ac68126565e24'/>
<id>2b4b2482e70eba10dd98653a3a5ac68126565e24</id>
<content type='text'>
romfs_get_unmapped_area() checks argument `len' without considering
PAGE_ALIGN which will cause do_mmap_pgoff() return -EINVAL error after
commit f67d9b1576c ("nommu: add page_align to mmap").

Fix the check by changing it in same way ramfs_nommu_get_unmapped_area()
was changed in ramfs/file-nommu.c.

Signed-off-by: Bob Liu &lt;lliubbo@gmail.com&gt;
Cc: David Howells &lt;dhowells@redhat.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Acked-by: Greg Ungerer &lt;gerg@snapgear.com&gt;
Cc: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
romfs_get_unmapped_area() checks argument `len' without considering
PAGE_ALIGN which will cause do_mmap_pgoff() return -EINVAL error after
commit f67d9b1576c ("nommu: add page_align to mmap").

Fix the check by changing it in same way ramfs_nommu_get_unmapped_area()
was changed in ramfs/file-nommu.c.

Signed-off-by: Bob Liu &lt;lliubbo@gmail.com&gt;
Cc: David Howells &lt;dhowells@redhat.com&gt;
Cc: Paul Mundt &lt;lethal@linux-sh.org&gt;
Acked-by: Greg Ungerer &lt;gerg@snapgear.com&gt;
Cc: Geert Uytterhoeven &lt;geert@linux-m68k.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable</title>
<updated>2011-06-27T20:32:14+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-27T20:32:14+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=af4087e0e682df12bdffec5cfafc2fec9208716e'/>
<id>af4087e0e682df12bdffec5cfafc2fec9208716e</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
  btrfs: fix inconsonant inode information
  Btrfs: make sure to update total_bitmaps when freeing cache V3
  Btrfs: fix type mismatch in find_free_extent()
  Btrfs: make sure to record the transid in new inodes
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/btrfs-unstable:
  btrfs: fix inconsonant inode information
  Btrfs: make sure to update total_bitmaps when freeing cache V3
  Btrfs: fix type mismatch in find_free_extent()
  Btrfs: make sure to record the transid in new inodes
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://oss.sgi.com/xfs/xfs</title>
<updated>2011-06-27T16:01:29+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-27T16:01:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=4699d4423c07a1db35ea9453eac3a07e818338f9'/>
<id>4699d4423c07a1db35ea9453eac3a07e818338f9</id>
<content type='text'>
* 'for-linus' of git://oss.sgi.com/xfs/xfs:
  xfs: prevent bogus assert when trying to remove non-existent attribute
  xfs: clear XFS_IDIRTY_RELEASE on truncate down
  xfs: reset inode per-lifetime state when recycling it
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'for-linus' of git://oss.sgi.com/xfs/xfs:
  xfs: prevent bogus assert when trying to remove non-existent attribute
  xfs: clear XFS_IDIRTY_RELEASE on truncate down
  xfs: reset inode per-lifetime state when recycling it
</pre>
</div>
</content>
</entry>
<entry>
<title>btrfs: fix inconsonant inode information</title>
<updated>2011-06-27T15:34:27+00:00</updated>
<author>
<name>Miao Xie</name>
<email>miaox@cn.fujitsu.com</email>
</author>
<published>2011-06-23T07:27:13+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=2f7e33d432d097a2a7f467b031bf18be91cb3d49'/>
<id>2f7e33d432d097a2a7f467b031bf18be91cb3d49</id>
<content type='text'>
When iputting the inode, We may leave the delayed nodes if they have some
delayed items that have not been dealt with. So when the inode is read again,
we must look up the relative delayed node, and use the information in it to
initialize the inode. Or we will get inconsonant inode information, it may
cause that the same directory index number is allocated again, and hit the
following oops:

[ 5447.554187] err add delayed dir index item(name: pglog_0.965_0) into the
insertion tree of the delayed node(root id: 262, inode id: 258, errno: -17)
[ 5447.569766] ------------[ cut here ]------------
[ 5447.575361] kernel BUG at fs/btrfs/delayed-inode.c:1301!
[SNIP]
[ 5447.790721] Call Trace:
[ 5447.793191]  [&lt;ffffffffa0641c4e&gt;] btrfs_insert_dir_item+0x189/0x1bb [btrfs]
[ 5447.800156]  [&lt;ffffffffa0651a45&gt;] btrfs_add_link+0x12b/0x191 [btrfs]
[ 5447.806517]  [&lt;ffffffffa0651adc&gt;] btrfs_add_nondir+0x31/0x58 [btrfs]
[ 5447.812876]  [&lt;ffffffffa0651d6a&gt;] btrfs_create+0xf9/0x197 [btrfs]
[ 5447.818961]  [&lt;ffffffff8111f840&gt;] vfs_create+0x72/0x92
[ 5447.824090]  [&lt;ffffffff8111fa8c&gt;] do_last+0x22c/0x40b
[ 5447.829133]  [&lt;ffffffff8112076a&gt;] path_openat+0xc0/0x2ef
[ 5447.834438]  [&lt;ffffffff810c58e2&gt;] ? __perf_event_task_sched_out+0x24/0x44
[ 5447.841216]  [&lt;ffffffff8103ecdd&gt;] ? perf_event_task_sched_out+0x59/0x67
[ 5447.847846]  [&lt;ffffffff81121a79&gt;] do_filp_open+0x3d/0x87
[ 5447.853156]  [&lt;ffffffff811e126c&gt;] ? strncpy_from_user+0x43/0x4d
[ 5447.859072]  [&lt;ffffffff8111f1f5&gt;] ? getname_flags+0x2e/0x80
[ 5447.864636]  [&lt;ffffffff8111f179&gt;] ? do_getname+0x14b/0x173
[ 5447.870112]  [&lt;ffffffff8111f1b7&gt;] ? audit_getname+0x16/0x26
[ 5447.875682]  [&lt;ffffffff8112b1ab&gt;] ? spin_lock+0xe/0x10
[ 5447.880882]  [&lt;ffffffff81112d39&gt;] do_sys_open+0x69/0xae
[ 5447.886153]  [&lt;ffffffff81112db1&gt;] sys_open+0x20/0x22
[ 5447.891114]  [&lt;ffffffff813b9aab&gt;] system_call_fastpath+0x16/0x1b

Fix it by reusing the old delayed node.

Reported-by: Jim Schutt &lt;jaschut@sandia.gov&gt;
Signed-off-by: Miao Xie &lt;miaox@cn.fujitsu.com&gt;
Tested-by: Jim Schutt &lt;jaschut@sandia.gov&gt;
Signed-off-by: Chris Mason &lt;chris.mason@oracle.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When iputting the inode, We may leave the delayed nodes if they have some
delayed items that have not been dealt with. So when the inode is read again,
we must look up the relative delayed node, and use the information in it to
initialize the inode. Or we will get inconsonant inode information, it may
cause that the same directory index number is allocated again, and hit the
following oops:

[ 5447.554187] err add delayed dir index item(name: pglog_0.965_0) into the
insertion tree of the delayed node(root id: 262, inode id: 258, errno: -17)
[ 5447.569766] ------------[ cut here ]------------
[ 5447.575361] kernel BUG at fs/btrfs/delayed-inode.c:1301!
[SNIP]
[ 5447.790721] Call Trace:
[ 5447.793191]  [&lt;ffffffffa0641c4e&gt;] btrfs_insert_dir_item+0x189/0x1bb [btrfs]
[ 5447.800156]  [&lt;ffffffffa0651a45&gt;] btrfs_add_link+0x12b/0x191 [btrfs]
[ 5447.806517]  [&lt;ffffffffa0651adc&gt;] btrfs_add_nondir+0x31/0x58 [btrfs]
[ 5447.812876]  [&lt;ffffffffa0651d6a&gt;] btrfs_create+0xf9/0x197 [btrfs]
[ 5447.818961]  [&lt;ffffffff8111f840&gt;] vfs_create+0x72/0x92
[ 5447.824090]  [&lt;ffffffff8111fa8c&gt;] do_last+0x22c/0x40b
[ 5447.829133]  [&lt;ffffffff8112076a&gt;] path_openat+0xc0/0x2ef
[ 5447.834438]  [&lt;ffffffff810c58e2&gt;] ? __perf_event_task_sched_out+0x24/0x44
[ 5447.841216]  [&lt;ffffffff8103ecdd&gt;] ? perf_event_task_sched_out+0x59/0x67
[ 5447.847846]  [&lt;ffffffff81121a79&gt;] do_filp_open+0x3d/0x87
[ 5447.853156]  [&lt;ffffffff811e126c&gt;] ? strncpy_from_user+0x43/0x4d
[ 5447.859072]  [&lt;ffffffff8111f1f5&gt;] ? getname_flags+0x2e/0x80
[ 5447.864636]  [&lt;ffffffff8111f179&gt;] ? do_getname+0x14b/0x173
[ 5447.870112]  [&lt;ffffffff8111f1b7&gt;] ? audit_getname+0x16/0x26
[ 5447.875682]  [&lt;ffffffff8112b1ab&gt;] ? spin_lock+0xe/0x10
[ 5447.880882]  [&lt;ffffffff81112d39&gt;] do_sys_open+0x69/0xae
[ 5447.886153]  [&lt;ffffffff81112db1&gt;] sys_open+0x20/0x22
[ 5447.891114]  [&lt;ffffffff813b9aab&gt;] system_call_fastpath+0x16/0x1b

Fix it by reusing the old delayed node.

Reported-by: Jim Schutt &lt;jaschut@sandia.gov&gt;
Signed-off-by: Miao Xie &lt;miaox@cn.fujitsu.com&gt;
Tested-by: Jim Schutt &lt;jaschut@sandia.gov&gt;
Signed-off-by: Chris Mason &lt;chris.mason@oracle.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6</title>
<updated>2011-06-27T02:40:31+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-27T02:40:31+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=258e43fdb00c73d424b114ae3850accd55b27cbb'/>
<id>258e43fdb00c73d424b114ae3850accd55b27cbb</id>
<content type='text'>
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN
  cifs: free blkcipher in smbhash
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
  cifs: mark CONFIG_CIFS_NFSD_EXPORT as BROKEN
  cifs: free blkcipher in smbhash
</pre>
</div>
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6</title>
<updated>2011-06-27T02:39:22+00:00</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2011-06-27T02:39:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=804a007f5401f87fc6e7da1e8884dc32912e35d0'/>
<id>804a007f5401f87fc6e7da1e8884dc32912e35d0</id>
<content type='text'>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
  cifs: propagate errors from cifs_get_root() to mount(2)
  cifs: tidy cifs_do_mount() up a bit
  cifs: more breakage on mount failures
  cifs: close sget() races
  cifs: pull freeing mountdata/dropping nls/freeing cifs_sb into cifs_umount()
  cifs: move cifs_umount() call into -&gt;kill_sb()
  cifs: pull cifs_mount() call up
  sanitize cifs_umount() prototype
  cifs: initialize -&gt;tlink_tree in cifs_setup_cifs_sb()
  cifs: allocate mountdata earlier
  cifs: leak on mount if we share superblock
  cifs: don't pass superblock to cifs_mount()
  cifs: don't leak nls on mount failure
  cifs: double free on mount failure
  take bdi setup/destruction into cifs_mount/cifs_umount

Acked-by: Steve French &lt;smfrench@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
  cifs: propagate errors from cifs_get_root() to mount(2)
  cifs: tidy cifs_do_mount() up a bit
  cifs: more breakage on mount failures
  cifs: close sget() races
  cifs: pull freeing mountdata/dropping nls/freeing cifs_sb into cifs_umount()
  cifs: move cifs_umount() call into -&gt;kill_sb()
  cifs: pull cifs_mount() call up
  sanitize cifs_umount() prototype
  cifs: initialize -&gt;tlink_tree in cifs_setup_cifs_sb()
  cifs: allocate mountdata earlier
  cifs: leak on mount if we share superblock
  cifs: don't pass superblock to cifs_mount()
  cifs: don't leak nls on mount failure
  cifs: double free on mount failure
  take bdi setup/destruction into cifs_mount/cifs_umount

Acked-by: Steve French &lt;smfrench@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Btrfs: make sure to update total_bitmaps when freeing cache V3</title>
<updated>2011-06-25T13:31:06+00:00</updated>
<author>
<name>Josef Bacik</name>
<email>josef@redhat.com</email>
</author>
<published>2011-06-24T16:02:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.tavy.me/linux.git/commit/?id=9b90f5135320bc74dc6c9a8c74d69fd4821d9282'/>
<id>9b90f5135320bc74dc6c9a8c74d69fd4821d9282</id>
<content type='text'>
A user reported this bug again where we have more bitmaps than we are supposed
to.  This is because we failed to load the free space cache, but don't update
the ctl-&gt;total_bitmaps counter when we remove entries from the tree.  This patch
fixes this problem and we should be good to go again.  Thanks,

Signed-off-by: Josef Bacik &lt;josef@redhat.com&gt;
Signed-off-by: Chris Mason &lt;chris.mason@oracle.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
A user reported this bug again where we have more bitmaps than we are supposed
to.  This is because we failed to load the free space cache, but don't update
the ctl-&gt;total_bitmaps counter when we remove entries from the tree.  This patch
fixes this problem and we should be good to go again.  Thanks,

Signed-off-by: Josef Bacik &lt;josef@redhat.com&gt;
Signed-off-by: Chris Mason &lt;chris.mason@oracle.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
