<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/fs/fuse, branch v3.4.11</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/fs/fuse?h=v3.4.11</id>
<link rel='self' href='https://git.amat.us/linux/atom/fs/fuse?h=v3.4.11'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2012-09-14T17:00:32Z</updated>
<entry>
<title>fuse: fix retrieve length</title>
<updated>2012-09-14T17:00:32Z</updated>
<author>
<name>Miklos Szeredi</name>
<email>mszeredi@suse.cz</email>
</author>
<published>2012-09-04T16:45:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b4b55ff702c3551ba39ccec0b1dda9e3b57429be'/>
<id>urn:sha1:b4b55ff702c3551ba39ccec0b1dda9e3b57429be</id>
<content type='text'>
commit c9e67d483776d8d2a5f3f70491161b205930ffe1 upstream.

In some cases fuse_retrieve() would return a short byte count if offset was
non-zero.  The data returned was correct, though.

Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>fuse: verify all ioctl retry iov elements</title>
<updated>2012-08-26T22:00:39Z</updated>
<author>
<name>Zach Brown</name>
<email>zab@redhat.com</email>
</author>
<published>2012-07-24T19:10:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=90f9cb724d38bf4ac4e355d19b1ee697dceea021'/>
<id>urn:sha1:90f9cb724d38bf4ac4e355d19b1ee697dceea021</id>
<content type='text'>
commit fb6ccff667712c46b4501b920ea73a326e49626a upstream.

Commit 7572777eef78ebdee1ecb7c258c0ef94d35bad16 attempted to verify that
the total iovec from the client doesn't overflow iov_length() but it
only checked the first element.  The iovec could still overflow by
starting with a small element.  The obvious fix is to check all the
elements.

The overflow case doesn't look dangerous to the kernel as the copy is
limited by the length after the overflow.  This fix restores the
intention of returning an error instead of successfully copying less
than the iovec represented.

I found this by code inspection.  I built it but don't have a test case.
I'm cc:ing stable because the initial commit did as well.

Signed-off-by: Zach Brown &lt;zab@redhat.com&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>fuse: fix stat call on 32 bit platforms</title>
<updated>2012-06-17T18:21:29Z</updated>
<author>
<name>Pavel Shilovsky</name>
<email>piastry@etersoft.ru</email>
</author>
<published>2012-05-10T15:49:38Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=9abcb7517f13aa54152bee6370538b8f56893349'/>
<id>urn:sha1:9abcb7517f13aa54152bee6370538b8f56893349</id>
<content type='text'>
commit 45c72cd73c788dd18c8113d4a404d6b4a01decf1 upstream.

Now we store attr-&gt;ino at inode-&gt;i_ino, return attr-&gt;ino at the
first time and then return inode-&gt;i_ino if the attribute timeout
isn't expired. That's wrong on 32 bit platforms because attr-&gt;ino
is 64 bit and inode-&gt;i_ino is 32 bit in this case.

Fix this by saving 64 bit ino in fuse_inode structure and returning
it every time we call getattr. Also squash attr-&gt;ino into inode-&gt;i_ino
explicitly.

Signed-off-by: Pavel Shilovsky &lt;piastry@etersoft.ru&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;

</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse</title>
<updated>2012-04-19T00:29:05Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-04-19T00:29:05Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=dbfad21422f8d2c0866185b3e449c4a6ebaec4e2'/>
<id>urn:sha1:dbfad21422f8d2c0866185b3e449c4a6ebaec4e2</id>
<content type='text'>
Pull fuse updates from Miklos Szeredi.

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mszeredi/fuse:
  fuse: use flexible array in fuse.h
  fuse: allow nanosecond granularity
  fuse: O_DIRECT support for files
  fuse: fix nlink after unlink
</content>
</entry>
<entry>
<title>fuse: allow nanosecond granularity</title>
<updated>2012-04-11T09:45:06Z</updated>
<author>
<name>Miklos Szeredi</name>
<email>mszeredi@suse.cz</email>
</author>
<published>2012-04-11T09:45:06Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=0a2da9b2ef2ef76c09397597f260245b020e6522'/>
<id>urn:sha1:0a2da9b2ef2ef76c09397597f260245b020e6522</id>
<content type='text'>
Derrik Pates reports that an utimensat with a NULL argument results in the
current time being sent from the kernel with 1 second granularity.

Reported-by: Derrik Pates &lt;demon@now.ai&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
</content>
</entry>
<entry>
<title>Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs</title>
<updated>2012-03-21T20:36:41Z</updated>
<author>
<name>Linus Torvalds</name>
<email>torvalds@linux-foundation.org</email>
</author>
<published>2012-03-21T20:36:41Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=e2a0883e4071237d09b604a342c28b96b44a04b3'/>
<id>urn:sha1:e2a0883e4071237d09b604a342c28b96b44a04b3</id>
<content type='text'>
Pull vfs pile 1 from Al Viro:
 "This is _not_ all; in particular, Miklos' and Jan's stuff is not there
  yet."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits)
  ext4: initialization of ext4_li_mtx needs to be done earlier
  debugfs-related mode_t whack-a-mole
  hfsplus: add an ioctl to bless files
  hfsplus: change finder_info to u32
  hfsplus: initialise userflags
  qnx4: new helper - try_extent()
  qnx4: get rid of qnx4_bread/qnx4_getblk
  take removal of PF_FORKNOEXEC to flush_old_exec()
  trim includes in inode.c
  um: uml_dup_mmap() relies on -&gt;mmap_sem being held, but activate_mm() doesn't hold it
  um: embed -&gt;stub_pages[] into mmu_context
  gadgetfs: list_for_each_safe() misuse
  ocfs2: fix leaks on failure exits in module_init
  ecryptfs: make register_filesystem() the last potential failure exit
  ntfs: forgets to unregister sysctls on register_filesystem() failure
  logfs: missing cleanup on register_filesystem() failure
  jfs: mising cleanup on register_filesystem() failure
  make configfs_pin_fs() return root dentry on success
  configfs: configfs_create_dir() has parent dentry in dentry-&gt;d_parent
  configfs: sanitize configfs_create()
  ...
</content>
</entry>
<entry>
<title>switch open-coded instances of d_make_root() to new helper</title>
<updated>2012-03-21T01:29:35Z</updated>
<author>
<name>Al Viro</name>
<email>viro@zeniv.linux.org.uk</email>
</author>
<published>2012-01-09T03:15:13Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=48fde701aff662559b38d9a609574068f22d00fe'/>
<id>urn:sha1:48fde701aff662559b38d9a609574068f22d00fe</id>
<content type='text'>
Signed-off-by: Al Viro &lt;viro@zeniv.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>fuse: remove the second argument of k[un]map_atomic()</title>
<updated>2012-03-20T13:48:22Z</updated>
<author>
<name>Cong Wang</name>
<email>amwang@redhat.com</email>
</author>
<published>2011-11-25T15:14:30Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=2408f6ef6bf58620f8330b37181d2bdca2e7c7c5'/>
<id>urn:sha1:2408f6ef6bf58620f8330b37181d2bdca2e7c7c5</id>
<content type='text'>
Signed-off-by: Cong Wang &lt;amwang@redhat.com&gt;
</content>
</entry>
<entry>
<title>fuse: O_DIRECT support for files</title>
<updated>2012-03-05T14:48:11Z</updated>
<author>
<name>Anand Avati</name>
<email>avati@redhat.com</email>
</author>
<published>2012-02-17T17:46:25Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=4273b793ec68753cc3fcf5be7cbfd88c2be2058d'/>
<id>urn:sha1:4273b793ec68753cc3fcf5be7cbfd88c2be2058d</id>
<content type='text'>
Implement -&gt;direct_IO() method in aops. The -&gt;direct_IO() method combines
the existing fuse_direct_read/fuse_direct_write methods to implement
O_DIRECT functionality.

Reaching -&gt;direct_IO() in the read path via generic_file_aio_read ensures
proper synchronization with page cache with its existing framework.

Reaching -&gt;direct_IO() in the write path via fuse_file_aio_write is made
to come via generic_file_direct_write() which makes it play nice with
the page cache w.r.t other mmap pages etc.

On files marked 'direct_io' by the filesystem server, IO always follows
the fuse_direct_read/write path. There is no effect of fcntl(O_DIRECT)
and it always succeeds.

On files not marked with 'direct_io' by the filesystem server, the IO
path depends on O_DIRECT flag by the application. This can be passed
at the time of open() as well as via fcntl().

Note that asynchronous O_DIRECT iocb jobs are completed synchronously
always (this has been the case with FUSE even before this patch)

Signed-off-by: Anand Avati &lt;avati@redhat.com&gt;
Reviewed-by: Jeff Moyer &lt;jmoyer@redhat.com&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
</content>
</entry>
<entry>
<title>fuse: fix nlink after unlink</title>
<updated>2012-03-05T14:48:11Z</updated>
<author>
<name>Miklos Szeredi</name>
<email>mszeredi@suse.cz</email>
</author>
<published>2012-03-05T14:48:11Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ac45d61357e86b9a0cf14e45e8e09dfb626970ef'/>
<id>urn:sha1:ac45d61357e86b9a0cf14e45e8e09dfb626970ef</id>
<content type='text'>
Anand Avati reports that the following sequence of system calls fail on a fuse
filesystem:


 	create("filename") =&gt; 0
 	link("filename", "linkname") =&gt; 0
 	unlink("filename") =&gt; 0
 	link("linkname", "filename") =&gt; -ENOENT ### BUG ###

vfs_link() fails with ENOENT if i_nlink is zero, this is done to prevent
resurrecting already deleted files.

Fuse clears i_nlink on unlink even if there are other links pointing to the
file.

Reported-by: Anand Avati &lt;avati@redhat.com&gt;
Signed-off-by: Miklos Szeredi &lt;mszeredi@suse.cz&gt;
</content>
</entry>
</feed>
