<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/storage, branch v3.2.5</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>storage/posix: assign ino as -1 if gfid is missing</title>
<updated>2011-11-03T09:59:56+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2011-11-02T08:49:10+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=a2a3906d76a4c3b2490a49ae694efd9ee3684b7c'/>
<id>a2a3906d76a4c3b2490a49ae694efd9ee3684b7c</id>
<content type='text'>
Change-Id: Ib99f751d9404d9369944475bb0c70ec001857c94
BUG: 3767
Reviewed-on: http://review.gluster.com/661
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: Ib99f751d9404d9369944475bb0c70ec001857c94
BUG: 3767
Reviewed-on: http://review.gluster.com/661
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>storage/posix: fill 'ia_ino' from 'ia_gfid' to preserve same ino number</title>
<updated>2011-10-24T06:00:48+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2011-10-20T06:50:34+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=333bd9b59c4298a7cb7796f3bd4ee444376c68c6'/>
<id>333bd9b59c4298a7cb7796f3bd4ee444376c68c6</id>
<content type='text'>
take the least significant 64bit from gfid and assign it to 'ia_ino',
hence for a given file (or directory), the 'ia_ino' number is always
same.

Change-Id: I9bc01576f24a3767999bbe612d047b6849ae1215
BUG: 3042
Reviewed-on: http://review.gluster.com/624
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
take the least significant 64bit from gfid and assign it to 'ia_ino',
hence for a given file (or directory), the 'ia_ino' number is always
same.

Change-Id: I9bc01576f24a3767999bbe612d047b6849ae1215
BUG: 3042
Reviewed-on: http://review.gluster.com/624
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: posix changes to handle gfid/conflicts self-heal</title>
<updated>2011-10-19T09:28:25+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2011-10-18T08:01:35+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=eab187ce06f6d72aeba297604e132d181da4c502'/>
<id>eab187ce06f6d72aeba297604e132d181da4c502</id>
<content type='text'>
Change-Id: Ib759befe1800bc6fd93bdf44f3a7f89bfffff46e
BUG: 3734
Reviewed-on: http://review.gluster.com/612
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: Ib759befe1800bc6fd93bdf44f3a7f89bfffff46e
BUG: 3734
Reviewed-on: http://review.gluster.com/612
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>storage/posix: Filter custom getxattrs in lookup</title>
<updated>2011-09-20T08:50:04+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2011-08-30T06:57:27+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=0f9502d5eb7e2f29e2428df3d55c28f3bc99b8ea'/>
<id>0f9502d5eb7e2f29e2428df3d55c28f3bc99b8ea</id>
<content type='text'>
Change-Id: Icb67cd739410071a07a9511e28c075fe8e9b9eaf
BUG: 3470
Reviewed-on: http://review.gluster.com/326
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Icb67cd739410071a07a9511e28c075fe8e9b9eaf
BUG: 3470
Reviewed-on: http://review.gluster.com/326
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;raghavendra@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>afr/stripe: collect pathinfo xattr from all childs</title>
<updated>2011-08-24T13:41:39+00:00</updated>
<author>
<name>Venky Shankar</name>
<email>venky@gluster.com</email>
</author>
<published>2011-08-16T06:47:29+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=d499cb8064f61b70bc37a7d6cbf0f0c3b219c342'/>
<id>d499cb8064f61b70bc37a7d6cbf0f0c3b219c342</id>
<content type='text'>
Change-Id: Iec8b609e66ef21f4fdd6ee2ff3060f0b71d47ca0
BUG: 3046
Reviewed-on: http://review.gluster.com/237
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: Iec8b609e66ef21f4fdd6ee2ff3060f0b71d47ca0
BUG: 3046
Reviewed-on: http://review.gluster.com/237
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>Change Copyright current year</title>
<updated>2011-08-10T17:57:44+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2011-08-09T06:50:10+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=92963fd0a09c912e6ababbcfe45d28ddebb0b645'/>
<id>92963fd0a09c912e6ababbcfe45d28ddebb0b645</id>
<content type='text'>
Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159
BUG: 3348
Reviewed-on: http://review.gluster.com/198
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Id1f1a91cf15d933d5621a0073ddaebe02df0f159
BUG: 3348
Reviewed-on: http://review.gluster.com/198
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>LICENSE: s/GNU Affero General Public/GNU General Public/</title>
<updated>2011-08-06T13:40:14+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pranithk@gluster.com</email>
</author>
<published>2011-08-06T08:40:58+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=56127b2a7c319d4edbadb76bbc7753b303f5b509'/>
<id>56127b2a7c319d4edbadb76bbc7753b303f5b509</id>
<content type='text'>
Change-Id: Ibf5f45431d7a55b70d7304649af652d6f25bb688
BUG: 3348
Reviewed-on: http://review.gluster.com/183
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ibf5f45431d7a55b70d7304649af652d6f25bb688
BUG: 3348
Reviewed-on: http://review.gluster.com/183
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: handle dictionary being NULL in a function</title>
<updated>2011-08-01T10:38:45+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2011-07-25T09:15:12+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=09ed0531bd882726e2965d2274d5c9171998f9c8'/>
<id>09ed0531bd882726e2965d2274d5c9171998f9c8</id>
<content type='text'>
Change-Id: Ib9cac6ed1635203802f089986f8acb1ce416265d
BUG: 3215
Reviewed-on: http://review.gluster.com/97
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ib9cac6ed1635203802f089986f8acb1ce416265d
BUG: 3215
Reviewed-on: http://review.gluster.com/97
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>posix: perform readdir filling in locked region</title>
<updated>2011-07-16T19:47:30+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@gluster.com</email>
</author>
<published>2011-07-15T01:09:41+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=b1dd2440bd69b190620616b86ce96c0b50422ed4'/>
<id>b1dd2440bd69b190620616b86ce96c0b50422ed4</id>
<content type='text'>
When two application threads share an open dir fd (DIR *) and issue
readdirs, storage/posix will receive separate readdir fops in separate
threads in parallel. This has two-fold issues

1. In the following pair of operations -

   entry = readdir(dir)
       and
   strcpy (gf_dirent-&gt;name, entry-&gt;d_name)

   @entry is a static buffer in libc which can get reused by another thread
   to get filled with a longer name. This can cause the second operation
   to overflow the buffer as the allocation was for the smaller name.

2. In the following pair of operations -

   seekdir (dir, offset)
      and
   entry = readdir(dir)

   If two threads are executing these sequence in parallel in separate
   threads, then one of them will end up reading wrong/unexpected entries.

It would be sufficient to fix 1. by using readdir_r but that still keeps
the second race open. Hence the patch moves all the set of operations to a
locked region which solves both races.

Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 3171 (Crash in server)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3171
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When two application threads share an open dir fd (DIR *) and issue
readdirs, storage/posix will receive separate readdir fops in separate
threads in parallel. This has two-fold issues

1. In the following pair of operations -

   entry = readdir(dir)
       and
   strcpy (gf_dirent-&gt;name, entry-&gt;d_name)

   @entry is a static buffer in libc which can get reused by another thread
   to get filled with a longer name. This can cause the second operation
   to overflow the buffer as the allocation was for the smaller name.

2. In the following pair of operations -

   seekdir (dir, offset)
      and
   entry = readdir(dir)

   If two threads are executing these sequence in parallel in separate
   threads, then one of them will end up reading wrong/unexpected entries.

It would be sufficient to fix 1. by using readdir_r but that still keeps
the second race open. Hence the patch moves all the set of operations to a
locked region which solves both races.

Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 3171 (Crash in server)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3171
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: set all keys present in 'params' dict while creating an entry</title>
<updated>2011-07-13T06:16:54+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amar@gluster.com</email>
</author>
<published>2011-07-13T00:24:04+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=972c4a3c347c2581de0e9d0fce6d5c1804eaa974'/>
<id>972c4a3c347c2581de0e9d0fce6d5c1804eaa974</id>
<content type='text'>
so, there is no need to do a 'setxattr()' after entry creation, which could now
fail due to ACL on server side.

Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 3164 (set xattr keys while entry creation)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3164
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
so, there is no need to do a 'setxattr()' after entry creation, which could now
fail due to ACL on server side.

Signed-off-by: Amar Tumballi &lt;amar@gluster.com&gt;
Signed-off-by: Anand Avati &lt;avati@gluster.com&gt;

BUG: 3164 (set xattr keys while entry creation)
URL: http://bugs.gluster.com/cgi-bin/bugzilla3/show_bug.cgi?id=3164
</pre>
</div>
</content>
</entry>
</feed>
