<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/bfs/dir.c, branch linux-2.6.37.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.37.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2010-10-26T01:26:11Z</updated>
<entry>
<title>new helper: ihold()</title>
<updated>2010-10-26T01:26:11Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2010-10-23T15:11:40Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7de9c6ee3ecffd99e1628e81a5ea5468f7581a1f'/>
<id>urn:sha1:7de9c6ee3ecffd99e1628e81a5ea5468f7581a1f</id>
<content type='text'>
Clones an existing reference to inode; caller must already hold one.

Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>rename the generic fsync implementations</title>
<updated>2010-05-28T02:06:06Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2010-05-26T15:53:41Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1b061d9247f71cd15edc4c4c4600191a903642c0'/>
<id>urn:sha1:1b061d9247f71cd15edc4c4c4600191a903642c0</id>
<content type='text'>
We don't name our generic fsync implementations very well currently.
The no-op implementation for in-memory filesystems currently is called
simple_sync_file which doesn't make too much sense to start with,
the the generic one for simple filesystems is called simple_fsync
which can lead to some confusion.

This patch renames the generic file fsync method to generic_file_fsync
to match the other generic_file_* routines it is supposed to be used
with, and the no-op implementation to noop_fsync to make it obvious
what to expect.  In addition add some documentation for both methods.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>bfs: replace inode uid,gid,mode initialization with helper function</title>
<updated>2010-05-21T22:31:25Z</updated>
<author>
<name>Dmitry Monakhov</name>
</author>
<published>2010-03-04T14:31:46Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e6ecdc70fb76490719bf5aa20c35d23c0a392ead'/>
<id>urn:sha1:e6ecdc70fb76490719bf5aa20c35d23c0a392ead</id>
<content type='text'>
Signed-off-by: Dmitry Monakhov &lt;dmonakhov@openvz.org&gt;
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>headers: smp_lock.h redux</title>
<updated>2009-07-12T19:22:34Z</updated>
<author>
<name>Alexey Dobriyan</name>
</author>
<published>2009-07-11T18:08:37Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=405f55712dfe464b3240d7816cc4fe4174831be2'/>
<id>urn:sha1:405f55712dfe464b3240d7816cc4fe4174831be2</id>
<content type='text'>
* Remove smp_lock.h from files which don't need it (including some headers!)
* Add smp_lock.h to files which do need it
* Make smp_lock.h include conditional in hardirq.h
  It's needed only for one kernel_locked() usage which is under CONFIG_PREEMPT

  This will make hardirq.h inclusion cheaper for every PREEMPT=n config
  (which includes allmodconfig/allyesconfig, BTW)

Signed-off-by: Alexey Dobriyan &lt;adobriyan@gmail.com&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>repair bfs_write_inode(), switch bfs to simple_fsync()</title>
<updated>2009-06-12T01:36:14Z</updated>
<author>
<name>Al Viro</name>
</author>
<published>2009-06-08T05:15:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4427f0c36e22e2cd6696b2fe7643e9756a14b3d3'/>
<id>urn:sha1:4427f0c36e22e2cd6696b2fe7643e9756a14b3d3</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>CRED: Wrap task credential accesses in the BFS filesystem</title>
<updated>2008-11-13T23:38:47Z</updated>
<author>
<name>David Howells</name>
</author>
<published>2008-11-13T23:38:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1109b07b7dcb938de7a0d65efc1b4739dc4e9787'/>
<id>urn:sha1:1109b07b7dcb938de7a0d65efc1b4739dc4e9787</id>
<content type='text'>
Wrap access to task credentials so that they can be separated more easily from
the task_struct during the introduction of COW creds.

Change most current-&gt;(|e|s|fs)[ug]id to current_(|e|s|fs)[ug]id().

Change some task-&gt;e?[ug]id to task_e?[ug]id().  In some places it makes more
sense to use RCU directly rather than a convenient wrapper; these will be
addressed by later patches.

Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;
Reviewed-by: James Morris &lt;jmorris@namei.org&gt;
Acked-by: Serge Hallyn &lt;serue@us.ibm.com&gt;
Cc: Tigran A. Aivazian &lt;tigran@aivazian.fsnet.co.uk&gt;
Signed-off-by: James Morris &lt;jmorris@namei.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fix -&gt;llseek for more directories</title>
<updated>2008-10-23T09:13:21Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2008-09-03T19:53:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3222a3e55f4025acb2a5a4379cf2f2b7df1f1243'/>
<id>urn:sha1:3222a3e55f4025acb2a5a4379cf2f2b7df1f1243</id>
<content type='text'>
With this patch all directory fops instances that have a readdir
that doesn't take the BKL are switched to generic_file_llseek.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
</content>
</entry>
<entry>
<title>bfs: fix Lockdep warning</title>
<updated>2008-09-13T21:41:51Z</updated>
<author>
<name>Eric Sesterhenn</name>
</author>
<published>2008-09-13T09:33:12Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1558182f651798164418abf53f76786da0ea4a6f'/>
<id>urn:sha1:1558182f651798164418abf53f76786da0ea4a6f</id>
<content type='text'>
This fixes:

  =============================================
  [ INFO: possible recursive locking detected ]
  2.6.27-rc5-00283-g70bb089 #68
  ---------------------------------------------
  touch/6855 is trying to acquire lock:
   (&amp;info-&gt;bfs_lock){--..}, at: [&lt;c02262f5&gt;] bfs_delete_inode+0x9e/0x18c

  but task is already holding lock:
   (&amp;info-&gt;bfs_lock){--..}, at: [&lt;c0226c00&gt;] bfs_create+0x45/0x187

  other info that might help us debug this:
  2 locks held by touch/6855:
   #0:  (&amp;type-&gt;i_mutex_dir_key#5){--..}, at: [&lt;c018ad13&gt;] do_filp_open+0x10b/0x62f
   #1:  (&amp;info-&gt;bfs_lock){--..}, at: [&lt;c0226c00&gt;] bfs_create+0x45/0x187

  stack backtrace:
  Pid: 6855, comm: touch Not tainted 2.6.27-rc5-00283-g70bb089 #68
   [&lt;c013e769&gt;] validate_chain+0x458/0x9f4
   [&lt;c013bece&gt;] ? trace_hardirqs_off+0xb/0xd
   [&lt;c013f36b&gt;] __lock_acquire+0x666/0x6e0
   [&lt;c013f440&gt;] lock_acquire+0x5b/0x77
   [&lt;c02262f5&gt;] ? bfs_delete_inode+0x9e/0x18c
   [&lt;c06aab74&gt;] mutex_lock_nested+0xbc/0x234
   [&lt;c02262f5&gt;] ? bfs_delete_inode+0x9e/0x18c
   [&lt;c02262f5&gt;] ? bfs_delete_inode+0x9e/0x18c
   [&lt;c02262f5&gt;] bfs_delete_inode+0x9e/0x18c
   [&lt;c0226257&gt;] ? bfs_delete_inode+0x0/0x18c
   [&lt;c01925e1&gt;] generic_delete_inode+0x94/0xfe
   [&lt;c019265d&gt;] generic_drop_inode+0x12/0x12f
   [&lt;c0191b7e&gt;] iput+0x4b/0x4e
   [&lt;c0226d1e&gt;] bfs_create+0x163/0x187
   [&lt;c0188b42&gt;] vfs_create+0xa6/0x114
   [&lt;c018adb5&gt;] do_filp_open+0x1ad/0x62f
   [&lt;c0107cdc&gt;] ? native_sched_clock+0x82/0x96
   [&lt;c06ac309&gt;] ? _spin_unlock+0x27/0x3c
   [&lt;c019379e&gt;] ? alloc_fd+0xbf/0xc9
   [&lt;c06ae2f4&gt;] ? sub_preempt_count+0x9d/0xab
   [&lt;c019379e&gt;] ? alloc_fd+0xbf/0xc9
   [&lt;c0180391&gt;] do_sys_open+0x42/0xb8
   [&lt;c041d564&gt;] ? trace_hardirqs_on_thunk+0xc/0x10
   [&lt;c0180449&gt;] sys_open+0x1e/0x26
   [&lt;c01038bd&gt;] sysenter_do_call+0x12/0x31
   =======================

The problem is that we don't unlock the bfs-&gt;lock mutex before calling
iput (we do in the other cases).

Signed-off-by: Eric Sesterhenn &lt;snakebyte@gmx.de&gt;
Cc: Tigran Aivazian &lt;tigran@aivazian.fsnet.co.uk&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>bfs: kill BKL</title>
<updated>2008-07-26T19:00:03Z</updated>
<author>
<name>Dmitri Vorobiev</name>
</author>
<published>2008-07-26T02:44:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=3f165e4cf2af042af7d2440d688299c0d2a48b1f'/>
<id>urn:sha1:3f165e4cf2af042af7d2440d688299c0d2a48b1f</id>
<content type='text'>
Replace the BKL-based locking scheme used in the bfs driver by a private
filesystem-wide mutex.

Signed-off-by: Dmitri Vorobiev &lt;dmitri.vorobiev@movial.fi&gt;
Cc: Tigran Aivazian &lt;tigran_aivazian@symantec.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>iget: stop BFS from using iget() and read_inode()</title>
<updated>2008-02-07T16:42:27Z</updated>
<author>
<name>David Howells</name>
</author>
<published>2008-02-07T08:15:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=e33ab086ae227a34e34b17e86dbb9d2dbaebb489'/>
<id>urn:sha1:e33ab086ae227a34e34b17e86dbb9d2dbaebb489</id>
<content type='text'>
Stop the BFS filesystem from using iget() and read_inode().  Replace
bfs_read_inode() with bfs_iget(), and call that instead of iget().  bfs_iget()
then uses iget_locked() directly and returns a proper error code instead of an
inode in the event of an error.

bfs_fill_super() returns any error incurred when getting the root inode
instead of EINVAL.

[kamalesh@linux.vnet.ibm.com: build fix]
Signed-off-by: David Howells &lt;dhowells@redhat.com&gt;
Acked-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Kamalesh Babulal &lt;kamalesh@linux.vnet.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
