<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/storage/posix/src/posix.c, branch v3.3.2qa2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>storage/posix: Option to set brick(of a volume)'s root dir's uid/gid</title>
<updated>2012-09-14T08:29:27+00:00</updated>
<author>
<name>Krishnan Parthasarathi</name>
<email>kparthas@redhat.com</email>
</author>
<published>2012-09-02T09:52:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2635c4a68d82be731461bb3c31188e5dd0093e7d'/>
<id>2635c4a68d82be731461bb3c31188e5dd0093e7d</id>
<content type='text'>
CLI
---
gluster volume set VOLNAME owner-uid uid
gluster volume set VOLNAME owner-gid gid
where uid,gid are the owner's user id and group id respectively that
would be set on the root of all brick (backend) fs.

TODO: uid/gid should not be -1. Today we don't validate that in CLI.

Change-Id: Ib6a2fb5e404691c5fe105a89faaeff3e1ab72e91
BUG: 853842
Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Reviewed-on: http://review.gluster.org/3939
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
CLI
---
gluster volume set VOLNAME owner-uid uid
gluster volume set VOLNAME owner-gid gid
where uid,gid are the owner's user id and group id respectively that
would be set on the root of all brick (backend) fs.

TODO: uid/gid should not be -1. Today we don't validate that in CLI.

Change-Id: Ib6a2fb5e404691c5fe105a89faaeff3e1ab72e91
BUG: 853842
Signed-off-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Reviewed-on: http://review.gluster.org/3939
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: implement native linux AIO support</title>
<updated>2012-08-27T15:08:45+00:00</updated>
<author>
<name>shishir gowda</name>
<email>sgowda@redhat.com</email>
</author>
<published>2012-08-23T13:04:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=10617e6cbc73329f259b471327d88375352042b0'/>
<id>10617e6cbc73329f259b471327d88375352042b0</id>
<content type='text'>
Configurable via cli with "storage.linux-aio" settable option
Backported Avati's patch http://review.gluster.org/#change,3627

BUG: 837495
Change-Id: Ia7c26f5734d34d341debd422a5c59bba31eef844
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.org/3849
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Configurable via cli with "storage.linux-aio" settable option
Backported Avati's patch http://review.gluster.org/#change,3627

BUG: 837495
Change-Id: Ia7c26f5734d34d341debd422a5c59bba31eef844
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.org/3849
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title> cluster/dht: Optimize readdirp calls in DHT</title>
<updated>2012-08-17T05:25:17+00:00</updated>
<author>
<name>shishir gowda</name>
<email>sgowda@redhat.com</email>
</author>
<published>2012-08-13T05:50:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=502c95bdfb35640fb424b37b080664e9c1639a86'/>
<id>502c95bdfb35640fb424b37b080664e9c1639a86</id>
<content type='text'>
Bring in option which is supported by posix xlator
to filter out directory's entries from being returned.
DHT would now request non-first subvols to filter out
directory entries.

dht xlator-option readdir-optimize will enable this
optimization

Change-Id: Ibf99f1bef501f285ff44a1cecfbebee9e16063b6
BUG: 838199
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3806
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Bring in option which is supported by posix xlator
to filter out directory's entries from being returned.
DHT would now request non-first subvols to filter out
directory entries.

dht xlator-option readdir-optimize will enable this
optimization

Change-Id: Ibf99f1bef501f285ff44a1cecfbebee9e16063b6
BUG: 838199
Signed-off-by: shishir gowda &lt;sgowda@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3806
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: handle getxattr failures gracefully</title>
<updated>2012-07-18T08:10:44+00:00</updated>
<author>
<name>Raghavendra Bhat</name>
<email>raghavendra@redhat.com</email>
</author>
<published>2012-07-11T17:30:27+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=98564a3de126658190c7d54873d4ea2adab59bd8'/>
<id>98564a3de126658190c7d54873d4ea2adab59bd8</id>
<content type='text'>
Use proper variable types for getting return value of getxattr calls,
which otherwise can lead to segfaulting of processes or page allocation
failures in the kernel.

Change-Id: Idc41b4022401c238d17ba357648234f7c2d56c87
BUG: 838195
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3658
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use proper variable types for getting return value of getxattr calls,
which otherwise can lead to segfaulting of processes or page allocation
failures in the kernel.

Change-Id: Idc41b4022401c238d17ba357648234f7c2d56c87
BUG: 838195
Signed-off-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3658
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cluster/stripe: implement the coalesce stripe file format</title>
<updated>2012-07-16T04:39:39+00:00</updated>
<author>
<name>Brian Foster</name>
<email>bfoster@redhat.com</email>
</author>
<published>2012-05-07T17:53:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1e1a162fa7ea5b6275a0212273ca96b4de410c00'/>
<id>1e1a162fa7ea5b6275a0212273ca96b4de410c00</id>
<content type='text'>
The coalesce file format for cluster/stripe condenses the striped
files to a contiguous layout. The elimination of holes in striped
files eliminates space wasted via local filesystem preallocation
heuristics and significantly improves read performance.

Coalesce mode is implemented with a new 'coalesce' xlator option,
which is user-configurable and disabled by default. The format of
newly created files is marked with a new 'stripe-coalesce' xattr.
Cluster/stripe handles/preserves the format of files regardless
of the current mode of operation (i.e., a volume can
simultaneously consist of coalesced and non-coalesced files).
Files without the stripe-coalesce attribute are assumed to have
the traditional format to provide backward compatibility.

extras/stripe-merge: support traditional and coalesce stripe formats

Update the stripe-merge recovery tool to handle the traditional
and coalesced file formats. The format of the file is detected
automatically (and verified) via the stripe-coalesce attributes.

BUG: 801887
Change-Id: I682f0b4e819f496ddb68c9a01c4de4688280fdf8
Signed-off-by: Brian Foster &lt;bfoster@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3639
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The coalesce file format for cluster/stripe condenses the striped
files to a contiguous layout. The elimination of holes in striped
files eliminates space wasted via local filesystem preallocation
heuristics and significantly improves read performance.

Coalesce mode is implemented with a new 'coalesce' xlator option,
which is user-configurable and disabled by default. The format of
newly created files is marked with a new 'stripe-coalesce' xattr.
Cluster/stripe handles/preserves the format of files regardless
of the current mode of operation (i.e., a volume can
simultaneously consist of coalesced and non-coalesced files).
Files without the stripe-coalesce attribute are assumed to have
the traditional format to provide backward compatibility.

extras/stripe-merge: support traditional and coalesce stripe formats

Update the stripe-merge recovery tool to handle the traditional
and coalesced file formats. The format of the file is detected
automatically (and verified) via the stripe-coalesce attributes.

BUG: 801887
Change-Id: I682f0b4e819f496ddb68c9a01c4de4688280fdf8
Signed-off-by: Brian Foster &lt;bfoster@redhat.com&gt;
Reviewed-on: http://review.gluster.com/3639
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: readdirp enhancements</title>
<updated>2012-05-30T06:03:52+00:00</updated>
<author>
<name>Anand Avati</name>
<email>avati@redhat.com</email>
</author>
<published>2012-05-27T23:52:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1b798491193add9cb296ce6817a6cbc2fdb9db34'/>
<id>1b798491193add9cb296ce6817a6cbc2fdb9db34</id>
<content type='text'>
- avoid multiple calls to posix_istat(). use cheaper posix_pstat()
- code re-org

Change-Id: I4a2e32626ade49b7d18158952849c6fe7bd6875c
BUG: 816140
Reviewed-on: http://review.gluster.com/3488
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- avoid multiple calls to posix_istat(). use cheaper posix_pstat()
- code re-org

Change-Id: I4a2e32626ade49b7d18158952849c6fe7bd6875c
BUG: 816140
Reviewed-on: http://review.gluster.com/3488
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>iobuf: option to provide larger size of buffers</title>
<updated>2012-05-04T04:54:54+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2012-04-12T12:22:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=e4b3c0d90c46e6dde97f57fa93ed215b0d34e0c4'/>
<id>e4b3c0d90c46e6dde97f57fa93ed215b0d34e0c4</id>
<content type='text'>
provide an option to failover to standard allocation if iobuf of
required size doesn't exists. this can be achieved by keeping an
arena dedicated for all the out of boundary allocations.

Change-Id: I41a2bd7d353dc7bcb2e1a6e4b41735afe9865975
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 812784
Reviewed-on: http://review.gluster.com/3136
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
provide an option to failover to standard allocation if iobuf of
required size doesn't exists. this can be achieved by keeping an
arena dedicated for all the out of boundary allocations.

Change-Id: I41a2bd7d353dc7bcb2e1a6e4b41735afe9865975
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 812784
Reviewed-on: http://review.gluster.com/3136
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>log cleanup: in setxattr() path</title>
<updated>2012-05-03T05:59:11+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2012-05-02T06:08:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=170a3a411c88f6ce1662c55440a372f512e901d1'/>
<id>170a3a411c88f6ce1662c55440a372f512e901d1</id>
<content type='text'>
* in posix we log occassionally if errno is ENOTSUP, added a
  suggestion to mount with 'user_xattr' option.

* changed server's *etxattr_cbk to log ENOTSUP in debug level.

* changed client's *etxattr_cbk to log ENOTSUP in debug level.

Change-Id: Icd604050aaa68546011f2c950ecd7883ac6ee820
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 811957
Reviewed-on: http://review.gluster.com/3140
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>
* in posix we log occassionally if errno is ENOTSUP, added a
  suggestion to mount with 'user_xattr' option.

* changed server's *etxattr_cbk to log ENOTSUP in debug level.

* changed client's *etxattr_cbk to log ENOTSUP in debug level.

Change-Id: Icd604050aaa68546011f2c950ecd7883ac6ee820
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 811957
Reviewed-on: http://review.gluster.com/3140
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: fix illegal memory access in fgetxattr()</title>
<updated>2012-04-27T20:27:13+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2012-04-27T07:50:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=4c84a4cd5e5e563e1e91656f7462b4c444e5f4e6'/>
<id>4c84a4cd5e5e563e1e91656f7462b4c444e5f4e6</id>
<content type='text'>
we were not checking for the return value of the fgetxattr(key), and
used to continue with the allocation even if size was -1, leading to
wrong memory access.

Change-Id: Ib5cf2e74fee95bc919b12efe89fed5cd25807efd
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 815346
Reviewed-on: http://review.gluster.com/3236
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
we were not checking for the return value of the fgetxattr(key), and
used to continue with the allocation even if size was -1, leading to
wrong memory access.

Change-Id: Ib5cf2e74fee95bc919b12efe89fed5cd25807efd
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
BUG: 815346
Reviewed-on: http://review.gluster.com/3236
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Anand Avati &lt;avati@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>storage/posix: Fix leak of dict in getxattr calls.</title>
<updated>2012-04-27T17:50:56+00:00</updated>
<author>
<name>shishir gowda</name>
<email>shishirng@gluster.com</email>
</author>
<published>2012-04-27T10:49:38+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f9ca9f09ce47715573d0ae2b5e174e8b63185b56'/>
<id>f9ca9f09ce47715573d0ae2b5e174e8b63185b56</id>
<content type='text'>
get_new_dict does not take a ref. Ref was taken only when any data
was added to the dict.
But in the out tag: we call explicit unref, which would move the ref
count to -1, if it was a unsuccessful call. unref destroys the dict
only if ref == 0.

Change-Id: Ie08c301237c2042daf90a7ef25569e3b06e3e1e9
BUG: 816870
Signed-off-by: shishir gowda &lt;shishirng@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3240
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.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>
get_new_dict does not take a ref. Ref was taken only when any data
was added to the dict.
But in the out tag: we call explicit unref, which would move the ref
count to -1, if it was a unsuccessful call. unref destroys the dict
only if ref == 0.

Change-Id: Ie08c301237c2042daf90a7ef25569e3b06e3e1e9
BUG: 816870
Signed-off-by: shishir gowda &lt;shishirng@gluster.com&gt;
Reviewed-on: http://review.gluster.com/3240
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;
Reviewed-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vijay@gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
