<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/nfs, branch v3.2.6qa2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>support for nano second resolution for mtime,ctime,atime attributes.</title>
<updated>2012-02-09T06:51:40+00:00</updated>
<author>
<name>krishna</name>
<email>ksriniva@redhat.com</email>
</author>
<published>2012-02-09T06:38:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=fa580e9299e09562c395bd464f3a1cf8a1116d6e'/>
<id>fa580e9299e09562c395bd464f3a1cf8a1116d6e</id>
<content type='text'>
Change-Id: Id5078f270d0fec280b53d4aa7b16bbaf42a2df05
BUG: 784095
Signed-off-by: krishna &lt;ksriniva@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2729
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Id5078f270d0fec280b53d4aa7b16bbaf42a2df05
BUG: 784095
Signed-off-by: krishna &lt;ksriniva@redhat.com&gt;
Reviewed-on: http://review.gluster.com/2729
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nfs: do not return -1 (error), if the transmission buffer list is empty</title>
<updated>2011-11-04T12:37:17+00:00</updated>
<author>
<name>Raghavendra Bhat</name>
<email>raghavendrabhat@gluster.com</email>
</author>
<published>2011-11-04T09:21:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=02b4de3c1a33dd6a37c62d0edc8307adb52638b7'/>
<id>02b4de3c1a33dd6a37c62d0edc8307adb52638b7</id>
<content type='text'>
In the rpc implementation of nfs suppose the transmission buffer list
is empty for the nfs server, -1 is being returned which is treated as
an error and the socket fd is closed to handle it. Because of this the
reply submission of the server will be failed. Thus if the transmission
buffer list is empty error should not be returned.

Change-Id: I42d0dada8fe0473daf4db085da10681d4926e1ae
BUG: 3765
Reviewed-on: http://review.gluster.com/671
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
In the rpc implementation of nfs suppose the transmission buffer list
is empty for the nfs server, -1 is being returned which is treated as
an error and the socket fd is closed to handle it. Because of this the
reply submission of the server will be failed. Thus if the transmission
buffer list is empty error should not be returned.

Change-Id: I42d0dada8fe0473daf4db085da10681d4926e1ae
BUG: 3765
Reviewed-on: http://review.gluster.com/671
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>check the return value of inode_path for less than or equal to zero</title>
<updated>2011-10-28T11:14:56+00:00</updated>
<author>
<name>Raghavendra Bhat</name>
<email>raghavendrabhat@gluster.com</email>
</author>
<published>2011-10-27T17:43:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=b9d94056e555c2386cee3344db23518a47970a97'/>
<id>b9d94056e555c2386cee3344db23518a47970a97</id>
<content type='text'>
Change-Id: I9bbdfe79664c1339b66819a6c7ea4b7698beb5c6
BUG: 3757
Reviewed-on: http://review.gluster.com/640
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I9bbdfe79664c1339b66819a6c7ea4b7698beb5c6
BUG: 3757
Reviewed-on: http://review.gluster.com/640
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nfs: size_t is an unsigned type. Changing it to ssize_t for "writelen" variable. Also propogate error to the calling functions.</title>
<updated>2011-10-10T11:03:16+00:00</updated>
<author>
<name>krishna</name>
<email>krishna@gluster.com</email>
</author>
<published>2011-09-12T12:11:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2cd86f11dda8bb377718b0d3e04924ee8f79cb59'/>
<id>2cd86f11dda8bb377718b0d3e04924ee8f79cb59</id>
<content type='text'>
Change-Id: If8ba73ac57bc235a28c1e1cdc7a5e11947e7a52f
BUG: 3526
Reviewed-on: http://review.gluster.com/400
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: If8ba73ac57bc235a28c1e1cdc7a5e11947e7a52f
BUG: 3526
Reviewed-on: http://review.gluster.com/400
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gnfs/server: allow 255-char file names</title>
<updated>2011-10-01T12:55:41+00:00</updated>
<author>
<name>Rajesh Amaravathi</name>
<email>rajesh@gluster.com</email>
</author>
<published>2011-09-26T05:38:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c2548c3247a17b3b415295fcbb4c119f4a579831'/>
<id>c2548c3247a17b3b415295fcbb4c119f4a579831</id>
<content type='text'>
* Posix requires 255 character filenames(NAME_MAX), so
buffer to store a filename should be 256(+1 for
terminating '\0' character).

Change-Id: Id06ffa0e2d90a5950198cda3e4146ff10d25308b
BUG: 3572
Reviewed-on: http://review.gluster.com/500
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-by: Krishna Srinivas &lt;krishna@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Posix requires 255 character filenames(NAME_MAX), so
buffer to store a filename should be 256(+1 for
terminating '\0' character).

Change-Id: Id06ffa0e2d90a5950198cda3e4146ff10d25308b
BUG: 3572
Reviewed-on: http://review.gluster.com/500
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-by: Krishna Srinivas &lt;krishna@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>NFS : Posix compliance fixes.</title>
<updated>2011-09-22T05:37:17+00:00</updated>
<author>
<name>Gaurav</name>
<email>gaurav@gluster.com</email>
</author>
<published>2011-09-21T11:40:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c3b764cad74114f77e8c4acc4c040c4b20666b5d'/>
<id>c3b764cad74114f77e8c4acc4c040c4b20666b5d</id>
<content type='text'>
Change-Id: I3687fd16bcc0ddc8a352efb9a0b410f54bec6e74
BUG: 1337
Reviewed-on: http://review.gluster.com/482
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I3687fd16bcc0ddc8a352efb9a0b410f54bec6e74
BUG: 1337
Reviewed-on: http://review.gluster.com/482
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amar@gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nfs-rpc: Use correct variable for volume-specific insecure ports check</title>
<updated>2011-09-12T13:26:53+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@gluster.com</email>
</author>
<published>2011-09-05T10:49:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=5e3699ea32ebc491b406508b878ea650f5dfc7c0'/>
<id>5e3699ea32ebc491b406508b878ea650f5dfc7c0</id>
<content type='text'>
Change-Id: Ia53f64e923babdd3af2d82b13350c97fa25fac2d
BUG: 3515
Reviewed-on: http://review.gluster.com/355
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ia53f64e923babdd3af2d82b13350c97fa25fac2d
BUG: 3515
Reviewed-on: http://review.gluster.com/355
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mount/nfs: Gluster nfs crashes with subdirectory mount</title>
<updated>2011-09-08T06:55:18+00:00</updated>
<author>
<name>Rajesh Amaravathi</name>
<email>rajesh.amaravathi@gmail.com</email>
</author>
<published>2011-08-29T05:00:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=e6992c73dc39a8e9e17f83eb1a6d5ab63c31f511'/>
<id>e6992c73dc39a8e9e17f83eb1a6d5ab63c31f511</id>
<content type='text'>
Glusterfs used to crash trying to dereference a NULL
pointer. Also, in mnt3_resolve_export_subdir, volume
name was prefixed to sub directory exported, resulting in
mount fail of sub directory. Fixed both issues.

Change-Id: I746f0c244b4cbf03033d73ac3e40518762d76385
BUG: 3481
Reviewed-on: http://review.gluster.com/346
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Glusterfs used to crash trying to dereference a NULL
pointer. Also, in mnt3_resolve_export_subdir, volume
name was prefixed to sub directory exported, resulting in
mount fail of sub directory. Fixed both issues.

Change-Id: I746f0c244b4cbf03033d73ac3e40518762d76385
BUG: 3481
Reviewed-on: http://review.gluster.com/346
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>nfs3: Resolve entry vs. hash conflict at same dir depth</title>
<updated>2011-09-08T06:53:55+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@gluster.com</email>
</author>
<published>2011-09-03T09:21:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=875740c702d6b30754d46b17d37dd0865743216a'/>
<id>875740c702d6b30754d46b17d37dd0865743216a</id>
<content type='text'>
Intro Note
==========
The current code in hard fh resolution takes the first-match approach, i.e.
which ever dirent either matches the hash or matches the gfid first
is the one chosen as the result for the next step of fh resolution. In
the latter case, i.e., dirent matches the gfid, we the next step is to
conclude the fh resolution by returning the entry whose gfid matched.
In the former, i.e., the hash matches the dirent, we choose the hash-matching
dirent as the next directory to descend into, for searching the file to be
operated upon.

Problem
=======
When performing hard fh resolution, there can be a situation where:

o the hash of the primary entry,i.e. the entry we're looking for and the hash
of another sibling directory, match. Note the use of "sibling", meaning both
the primary entry and the hash matching one are in the same directory, i.e.,
their filehandle.hashcount will be same.

o the sibling directory is encountered first during the dir search.

Because of the current code described in "Intro", we'll end up descending into
the sibling directory even though the correct behaviour is to ignore this and
wait till we encounter the primary entry in the same parent directory.

Once we end up descending into this sibling directory, the directory depth
validation check fails. The check fails because it notices that the resolution
is attempting to open a directory that is deeper in the fs tree than the file
we're looking for. When this check fails, we return an ESTALE. So basically, a
false-positive results in an estale to Specsfs.

This is not a theoretical situation. Me and Avati saw this on specsfs test
where sfs created terabytes-sized file system for its tests. The number of
files was so huge in a single directory that the hashes of two entries ended up
colliding.

Change-Id: I78d8756252330201e165d788a29277b4bce0df90
BUG: 3510
Reviewed-on: http://review.gluster.com/358
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Intro Note
==========
The current code in hard fh resolution takes the first-match approach, i.e.
which ever dirent either matches the hash or matches the gfid first
is the one chosen as the result for the next step of fh resolution. In
the latter case, i.e., dirent matches the gfid, we the next step is to
conclude the fh resolution by returning the entry whose gfid matched.
In the former, i.e., the hash matches the dirent, we choose the hash-matching
dirent as the next directory to descend into, for searching the file to be
operated upon.

Problem
=======
When performing hard fh resolution, there can be a situation where:

o the hash of the primary entry,i.e. the entry we're looking for and the hash
of another sibling directory, match. Note the use of "sibling", meaning both
the primary entry and the hash matching one are in the same directory, i.e.,
their filehandle.hashcount will be same.

o the sibling directory is encountered first during the dir search.

Because of the current code described in "Intro", we'll end up descending into
the sibling directory even though the correct behaviour is to ignore this and
wait till we encounter the primary entry in the same parent directory.

Once we end up descending into this sibling directory, the directory depth
validation check fails. The check fails because it notices that the resolution
is attempting to open a directory that is deeper in the fs tree than the file
we're looking for. When this check fails, we return an ESTALE. So basically, a
false-positive results in an estale to Specsfs.

This is not a theoretical situation. Me and Avati saw this on specsfs test
where sfs created terabytes-sized file system for its tests. The number of
files was so huge in a single directory that the hashes of two entries ended up
colliding.

Change-Id: I78d8756252330201e165d788a29277b4bce0df90
BUG: 3510
Reviewed-on: http://review.gluster.com/358
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Shehjar Tikoo &lt;shehjart@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>xlators/nfs: Fix a typo in option description</title>
<updated>2011-08-20T10:35:23+00:00</updated>
<author>
<name>Vijay Bellur</name>
<email>vijay@gluster.com</email>
</author>
<published>2011-08-20T10:06:44+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1c01e303c5176620583db10cb6f6783e61b8b3d1'/>
<id>1c01e303c5176620583db10cb6f6783e61b8b3d1</id>
<content type='text'>
Change-Id: Ibb888357b87603544f360d181637138261fb3b71
BUG: 3445
Reviewed-on: http://review.gluster.com/275
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ibb888357b87603544f360d181637138261fb3b71
BUG: 3445
Reviewed-on: http://review.gluster.com/275
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
