<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/fs/fuse/file.c, branch linux-2.6.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-2.6.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2006-11-03T20:27:57Z</updated>
<entry>
<title>[PATCH] fuse: -&gt;readpages() cleanup</title>
<updated>2006-11-03T20:27:57Z</updated>
<author>
<name>OGAWA Hirofumi</name>
</author>
<published>2006-11-03T06:07:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2e990021bfc65b1a3778479a9e6b4811f9c1ff0e'/>
<id>urn:sha1:2e990021bfc65b1a3778479a9e6b4811f9c1ff0e</id>
<content type='text'>
This just ignore the remaining pages.

Signed-off-by: OGAWA Hirofumi &lt;hirofumi@mail.parknet.co.jp&gt;
Cc: Steven French &lt;sfrench@us.ibm.com&gt;
Cc: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Cc: Steven Whitehouse &lt;swhiteho@redhat.com&gt;
Cc: Trond Myklebust &lt;trond.myklebust@fys.uio.no&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: fix hang on SMP</title>
<updated>2006-10-17T15:18:45Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-10-17T07:10:06Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9ffbb9162312fd8113037cb3d94f787f06bbfa9a'/>
<id>urn:sha1:9ffbb9162312fd8113037cb3d94f787f06bbfa9a</id>
<content type='text'>
Fuse didn't always call i_size_write() with i_mutex held which caused rare
hangs on SMP/32bit.  This bug has been present since fuse-2.2, well before
being merged into mainline.

The simplest solution is to protect i_size_write() with the per-connection
spinlock.  Using i_mutex for this purpose would require some restructuring of
the code and I'm not even sure it's always safe to acquire i_mutex in all
places i_size needs to be set.

Since most of vmtruncate is already duplicated for other reasons, duplicate
the remaining part as well, making all i_size_write() calls internal to fuse.

Using i_size_write() was unnecessary in fuse_init_inode(), since this function
is only called on a newly created locked inode.

Reported by a few people over the years, but special thanks to Dana Henriksen
who was persistent enough in helping me debug it.

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] Streamline generic_file_* interfaces and filemap cleanups</title>
<updated>2006-10-01T07:39:28Z</updated>
<author>
<name>Badari Pulavarty</name>
</author>
<published>2006-10-01T06:28:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=543ade1fc901db4c3dbe9fb27241fb977f1f3eea'/>
<id>urn:sha1:543ade1fc901db4c3dbe9fb27241fb977f1f3eea</id>
<content type='text'>
This patch cleans up generic_file_*_read/write() interfaces.  Christoph
Hellwig gave me the idea for this clean ups.

In a nutshell, all filesystems should set .aio_read/.aio_write methods and use
do_sync_read/ do_sync_write() as their .read/.write methods.  This allows us
to cleanup all variants of generic_file_* routines.

Final available interfaces:

generic_file_aio_read() - read handler
generic_file_aio_write() - write handler
generic_file_aio_write_nolock() - no lock write handler

__generic_file_aio_write_nolock() - internal worker routine

Signed-off-by: Badari Pulavarty &lt;pbadari@us.ibm.com&gt;
Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: fix error case in fuse_readpages</title>
<updated>2006-08-14T19:54:29Z</updated>
<author>
<name>Alexander Zarochentsev</name>
</author>
<published>2006-08-14T06:24:27Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=1d7ea7324ae7a59f8e17e4ba76a2707c1e6f24d2'/>
<id>urn:sha1:1d7ea7324ae7a59f8e17e4ba76a2707c1e6f24d2</id>
<content type='text'>
Don't let fuse_readpages leave the @pages list not empty when exiting
on error.

[akpm@osdl.org: kernel-doc fixes]
Signed-off-by: Alexander Zarochentsev &lt;zam@namesys.com&gt;
Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@suse.de&gt;
</content>
</entry>
<entry>
<title>[PATCH] mark address_space_operations const</title>
<updated>2006-06-28T21:59:04Z</updated>
<author>
<name>Christoph Hellwig</name>
</author>
<published>2006-06-28T11:26:44Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f5e54d6e53a20cef45af7499e86164f0e0d16bb2'/>
<id>urn:sha1:f5e54d6e53a20cef45af7499e86164f0e0d16bb2</id>
<content type='text'>
Same as with already do with the file operations: keep them in .rodata and
prevents people from doing runtime patching.

Signed-off-by: Christoph Hellwig &lt;hch@lst.de&gt;
Cc: Steven French &lt;sfrench@us.ibm.com&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: scramble lock owner ID</title>
<updated>2006-06-25T17:01:20Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-06-25T12:48:55Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9c8ef5614da22666e339b125263d315cfaa89109'/>
<id>urn:sha1:9c8ef5614da22666e339b125263d315cfaa89109</id>
<content type='text'>
VFS uses current-&gt;files pointer as lock owner ID, and it wouldn't be
prudent to expose this value to userspace.  So scramble it with XTEA using
a per connection random key, known only to the kernel.  Only one direction
needs to be implemented, since the ID is never sent in the reverse
direction.

The XTEA algorithm is implemented inline since it's simple enough to do so,
and this adds less complexity than if the crypto API were used.

Thanks to Jesper Juhl for the idea.

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: add request interruption</title>
<updated>2006-06-25T17:01:19Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-06-25T12:48:54Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=a4d27e75ffb7b8ecb7eed0c7db0df975525f3fd7'/>
<id>urn:sha1:a4d27e75ffb7b8ecb7eed0c7db0df975525f3fd7</id>
<content type='text'>
Add synchronous request interruption.  This is needed for file locking
operations which have to be interruptible.  However filesystem may implement
interruptibility of other operations (e.g.  like NFS 'intr' mount option).

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: ensure FLUSH reaches userspace</title>
<updated>2006-06-25T17:01:19Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-06-25T12:48:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=33649c91a3df57c1090a657637d44b896de367e7'/>
<id>urn:sha1:33649c91a3df57c1090a657637d44b896de367e7</id>
<content type='text'>
All POSIX locks owned by the current task are removed on close().  If the
FLUSH request resulting initiated by close() fails to reach userspace, there
might be locks remaining, which cannot be removed.

The only reason it could fail, is if allocating the request fails.  In this
case use the request reserved for RELEASE, or if that is currently used by
another FLUSH, wait for it to become available.

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: add POSIX file locking support</title>
<updated>2006-06-25T17:01:19Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-06-25T12:48:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7142125937e1482ad3ae4366594c6586153dfc86'/>
<id>urn:sha1:7142125937e1482ad3ae4366594c6586153dfc86</id>
<content type='text'>
This patch adds POSIX file locking support to the fuse interface.

This implementation doesn't keep any locking state in kernel.  Unlocking on
close() is handled by the FLUSH message, which now contains the lock owner id.

Mandatory locking is not supported.  The filesystem may enfoce mandatory
locking in userspace if needed.

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
<entry>
<title>[PATCH] fuse: no backgrounding on interrupt</title>
<updated>2006-06-25T17:01:19Z</updated>
<author>
<name>Miklos Szeredi</name>
</author>
<published>2006-06-25T12:48:50Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=51eb01e73599efb88c6c20b1c226d20309a75450'/>
<id>urn:sha1:51eb01e73599efb88c6c20b1c226d20309a75450</id>
<content type='text'>
Don't put requests into the background when a fatal interrupt occurs while the
request is in userspace.  This removes a major wart from the implementation.

Backgrounding of requests was introduced to allow breaking of deadlocks.
However now the same can be achieved by aborting the filesystem through the
'abort' sysfs attribute.

This is a change in the interface, but should not cause problems, since these
kinds of deadlocks never happen during normal operation.

Signed-off-by: Miklos Szeredi &lt;miklos@szeredi.hu&gt;
Signed-off-by: Andrew Morton &lt;akpm@osdl.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@osdl.org&gt;
</content>
</entry>
</feed>
