<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/libglusterfsclient/src, branch 2.0.1</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>libglusterfsclient: Improve readdir conformance on re-entrancy</title>
<updated>2009-05-06T07:07:19+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-06T06:53:54+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=cba961e9f4ff3452f5e8e6152c632a258b737576'/>
<id>cba961e9f4ff3452f5e8e6152c632a258b737576</id>
<content type='text'>
readdir is supposed to be non-re-entrant only with respect to the
given dir stream, not the whole process.

What that means is the static struct dirent that we maintain in
libglusterfsclient should be per-directory handle and not
process-wide.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
readdir is supposed to be non-re-entrant only with respect to the
given dir stream, not the whole process.

What that means is the static struct dirent that we maintain in
libglusterfsclient should be per-directory handle and not
process-wide.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Fix large directory reading bug</title>
<updated>2009-05-06T07:06:35+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-06T06:53:14+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=f82651ef4ff5a9e94fa9c0d1f9cf091345440b56'/>
<id>f82651ef4ff5a9e94fa9c0d1f9cf091345440b56</id>
<content type='text'>
As of now, we use 1024 bytes as the buffer for reading directory
entries. If a directory as many files, then its possible that it does
not fit into this buffer, thereby requiring more than one call to
readdir. Now suppose the last bunch of directories fit more or less
exactly int the 1024 byte buffer. If this happens, the offset
extracted by the current logic(in libgf_client_readdir) never gets
updated beyond the first entry in this last block, because the last
block's first entry always remains same. This explanation is
convoluted, I know, but I too found out the hard way.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
As of now, we use 1024 bytes as the buffer for reading directory
entries. If a directory as many files, then its possible that it does
not fit into this buffer, thereby requiring more than one call to
readdir. Now suppose the last bunch of directories fit more or less
exactly int the 1024 byte buffer. If this happens, the offset
extracted by the current logic(in libgf_client_readdir) never gets
updated beyond the first entry in this last block, because the last
block's first entry always remains same. This explanation is
convoluted, I know, but I too found out the hard way.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add 0-byte size/count guards</title>
<updated>2009-05-05T12:21:24+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:34:57+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=e9800f8915257f8e3fc94dea8257e20a5561dfd7'/>
<id>e9800f8915257f8e3fc94dea8257e20a5561dfd7</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: A Fix deadlock in ftruncate</title>
<updated>2009-05-05T12:06:41+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:29:11+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=42d5355a6221ea473372c891544e4cc7b265bbe9'/>
<id>42d5355a6221ea473372c891544e4cc7b265bbe9</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Conform'ify glusterfs_readdir</title>
<updated>2009-05-05T12:06:23+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:29:03+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=7eb61fb44986fc834a19d9f38754f1be54d07e09'/>
<id>7eb61fb44986fc834a19d9f38754f1be54d07e09</id>
<content type='text'>
This commit does two things:
1. Changes glusterfs_readdir prototype to conform to the POSIX
readdir().
2. Uses a 1024-byte value instead of sizeof(struct dirent) for the
@size for libgf_client_readdir. This allows even larger names to fit
into a single readdir request to the server.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This commit does two things:
1. Changes glusterfs_readdir prototype to conform to the POSIX
readdir().
2. Uses a 1024-byte value instead of sizeof(struct dirent) for the
@size for libgf_client_readdir. This allows even larger names to fit
into a single readdir request to the server.

Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add VMP-based lchown</title>
<updated>2009-05-05T12:01:45+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:28:56+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=b48df70c58f52878d58f3e1a0adc870688cdfcdc'/>
<id>b48df70c58f52878d58f3e1a0adc870688cdfcdc</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add remove API</title>
<updated>2009-05-05T12:00:25+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:28:48+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=dec408299ea7a2cb9aa9aa3ea3a3c72ee79169de'/>
<id>dec408299ea7a2cb9aa9aa3ea3a3c72ee79169de</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add lightweight path resolution</title>
<updated>2009-05-05T11:58:41+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:28:38+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=4353ba5cdf0dab29e30997ce5b67055c8f1e1cba'/>
<id>4353ba5cdf0dab29e30997ce5b67055c8f1e1cba</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add lgetxattr API</title>
<updated>2009-05-05T11:58:36+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:28:30+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=e57175c0177ecc8b9ff80d3ce6c5f9a3f8248214'/>
<id>e57175c0177ecc8b9ff80d3ce6c5f9a3f8248214</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfsclient: Add setxattr,lsetxattr API</title>
<updated>2009-05-05T11:58:31+00:00</updated>
<author>
<name>Shehjar Tikoo</name>
<email>shehjart@zresearch.com</email>
</author>
<published>2009-05-05T10:28:23+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=d18d2550484f3d930557fed038a6bf9ffa23de48'/>
<id>d18d2550484f3d930557fed038a6bf9ffa23de48</id>
<content type='text'>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Signed-off-by: Anand V. Avati &lt;avati@amp.gluster.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
