<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/performance/md-cache, branch v4.1dev</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>md-cache: Implement dynamic configuration of xattr list for caching</title>
<updated>2018-01-22T04:10:52+00:00</updated>
<author>
<name>Poornima G</name>
<email>pgurusid@redhat.com</email>
</author>
<published>2018-01-09T11:56:44+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=24bf7715140586675f8d2036f4d589bc255c16dc'/>
<id>24bf7715140586675f8d2036f4d589bc255c16dc</id>
<content type='text'>
Currently, the list of xattrs that md-cache can cache is hard coded
in the md-cache.c file, this necessiates code change and rebuild
everytime a new xattr needs to be added to md-cache xattr cache
list.

With this patch, the user will be able to configure a comma
seperated list of xattrs to be cached by md-cache

Updates #297

Change-Id: Ie35ed607d17182d53f6bb6e6c6563ac52bc3132e
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, the list of xattrs that md-cache can cache is hard coded
in the md-cache.c file, this necessiates code change and rebuild
everytime a new xattr needs to be added to md-cache xattr cache
list.

With this patch, the user will be able to configure a comma
seperated list of xattrs to be cached by md-cache

Updates #297

Change-Id: Ie35ed607d17182d53f6bb6e6c6563ac52bc3132e
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: Serve nameless lookup from cache</title>
<updated>2018-01-18T06:03:32+00:00</updated>
<author>
<name>Poornima G</name>
<email>pgurusid@redhat.com</email>
</author>
<published>2017-08-07T05:54:46+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=2db7872d5251d98d47c262ff269776bfae2d4fb9'/>
<id>2db7872d5251d98d47c262ff269776bfae2d4fb9</id>
<content type='text'>
Updates #232
Change-Id: I97e92312a53a50c2d1660bf8d657201fc05a76eb
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Updates #232
Change-Id: I97e92312a53a50c2d1660bf8d657201fc05a76eb
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>all: Simplify component message id's definition</title>
<updated>2017-12-14T02:33:51+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-12-12T21:31:53+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=415e0bcc80b350fc75f325b490560f44ba419b20'/>
<id>415e0bcc80b350fc75f325b490560f44ba419b20</id>
<content type='text'>
This patch creates a new way of defining message id's that is easier
and less error prone because it doesn't require so many manual changes
each time a new component is defined or a new message created.

Change-Id: I71ba8af9ac068f5add7e74f316a2478bc991c67b
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch creates a new way of defining message id's that is easier
and less error prone because it doesn't require so many manual changes
each time a new component is defined or a new message created.

Change-Id: I71ba8af9ac068f5add7e74f316a2478bc991c67b
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: Cache statfs calls</title>
<updated>2017-12-12T12:04:24+00:00</updated>
<author>
<name>Shreyas Siravara</name>
<email>sshreyas@fb.com</email>
</author>
<published>2017-09-07T22:34:58+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=d95db5505a9cb923e61ccd23d28b45ceb07b716f'/>
<id>d95db5505a9cb923e61ccd23d28b45ceb07b716f</id>
<content type='text'>
Summary:
- This gives md-cache to cache statfs calls
- You can turn it on or off via 'gluster vol set groot performance.md-cache-statfs &lt;on|off&gt;'

Change-Id: I664579e3c19fb9a6cd9d7b3a0eae061f70f4def4
BUG: 1523295
Signature: t1:4652632:1488581841:111cc01efe83c71f1e98d075abb10589c4574705
Reviewed-on: https://review.gluster.org/18228
Reviewed-by: Shreyas Siravara &lt;sshreyas@fb.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Signed-off-by: Shreyas Siravara &lt;sshreyas@fb.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Summary:
- This gives md-cache to cache statfs calls
- You can turn it on or off via 'gluster vol set groot performance.md-cache-statfs &lt;on|off&gt;'

Change-Id: I664579e3c19fb9a6cd9d7b3a0eae061f70f4def4
BUG: 1523295
Signature: t1:4652632:1488581841:111cc01efe83c71f1e98d075abb10589c4574705
Reviewed-on: https://review.gluster.org/18228
Reviewed-by: Shreyas Siravara &lt;sshreyas@fb.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Signed-off-by: Shreyas Siravara &lt;sshreyas@fb.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfs/atomic: Improved atomic support</title>
<updated>2017-11-14T05:22:00+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-11-07T12:45:03+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=3f8d118e48f11f448f35aca0c48ad40e0fd34f5b'/>
<id>3f8d118e48f11f448f35aca0c48ad40e0fd34f5b</id>
<content type='text'>
This patch solves a detection problem in configure.ac that prevented
that compilation detects builtin __atomic or __sync functions.

It also adds more atomic types and support for other atomic functions.

An special case has been added to support 64-bit atomics on 32-bit
systems. The solution is to fallback to the mutex solution only for
64-bit atomics, but smaller atomic types will still take advantage
of builtins if available.

Change-Id: I6b9afc7cd6e66b28a33278715583552872278801
BUG: 1510397
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch solves a detection problem in configure.ac that prevented
that compilation detects builtin __atomic or __sync functions.

It also adds more atomic types and support for other atomic functions.

An special case has been added to support 64-bit atomics on 32-bit
systems. The solution is to fallback to the mutex solution only for
64-bit atomics, but smaller atomic types will still take advantage
of builtins if available.

Change-Id: I6b9afc7cd6e66b28a33278715583552872278801
BUG: 1510397
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: Add additional samba and macOS specific EAs to mdcache</title>
<updated>2017-10-30T15:52:09+00:00</updated>
<author>
<name>Günther Deschner</name>
<email>gd@samba.org</email>
</author>
<published>2017-07-25T09:54:09+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=ae9b006f23b1408ff548348440369d056becdc1d'/>
<id>ae9b006f23b1408ff548348440369d056becdc1d</id>
<content type='text'>
Samba ships with a server implementation of the Apple Create Context
extension (AAPL) as negotiated by all modern Apple clients. With the
support of the AAPL extension, Apple clients will integrate better with
Samba servers. The AAPL implementation itself is contained in the Samba
vfs_fruit(8) module which has to be activated in Samba. This vfs_fruit
module also provides support for macOS alternate data streams which will
be represented in EAs. Two standard data streams ("AFP_AfpInfo" and
"AFP_Resource") will be stored in the following EAs:

* user.org.netatalk.Metadata
* user.org.netatalk.ResourceFork

For all other data streams, vfs_fruit relies on another Samba vfs
module, vfs_streams_xattr(8), to handle these. Although configurable, by
default the vfs_streams_xattr module will build EA keynames with a
"user.DosStream." prefix. Please note that we have to deal with only one
known prefix key, as macOS will happily compose EA keynames like:

* user.DosStream.com.apple.diskimages.fsck:$DATA
* user.DosStream.com.apple.diskimages.recentcksum:$DATA
* user.DosStream.com.apple.metadata:kMDItemWhereFroms:$DATA
* user.DosStream.com.apple.quarantine:$DATA
* etc.

Caching of vfs_fruit specific EAs is crucial for SMB performance and is
controlled with the same configuration option
"performance.cache-samba-metadata".

Guenther

Change-Id: Ia7aa341234dc13e1c0057f3d658b7ef711b5d31e
BUG: 1499933
Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Samba ships with a server implementation of the Apple Create Context
extension (AAPL) as negotiated by all modern Apple clients. With the
support of the AAPL extension, Apple clients will integrate better with
Samba servers. The AAPL implementation itself is contained in the Samba
vfs_fruit(8) module which has to be activated in Samba. This vfs_fruit
module also provides support for macOS alternate data streams which will
be represented in EAs. Two standard data streams ("AFP_AfpInfo" and
"AFP_Resource") will be stored in the following EAs:

* user.org.netatalk.Metadata
* user.org.netatalk.ResourceFork

For all other data streams, vfs_fruit relies on another Samba vfs
module, vfs_streams_xattr(8), to handle these. Although configurable, by
default the vfs_streams_xattr module will build EA keynames with a
"user.DosStream." prefix. Please note that we have to deal with only one
known prefix key, as macOS will happily compose EA keynames like:

* user.DosStream.com.apple.diskimages.fsck:$DATA
* user.DosStream.com.apple.diskimages.recentcksum:$DATA
* user.DosStream.com.apple.metadata:kMDItemWhereFroms:$DATA
* user.DosStream.com.apple.quarantine:$DATA
* etc.

Caching of vfs_fruit specific EAs is crucial for SMB performance and is
controlled with the same configuration option
"performance.cache-samba-metadata".

Guenther

Change-Id: Ia7aa341234dc13e1c0057f3d658b7ef711b5d31e
BUG: 1499933
Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: free "struct mdc_conf" in fini()</title>
<updated>2017-10-13T16:33:00+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2017-10-10T13:50:33+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=dd47c8ae6cfc9f704418cbad3e11f6aff67c4079'/>
<id>dd47c8ae6cfc9f704418cbad3e11f6aff67c4079</id>
<content type='text'>
Change-Id: Ia3a9b0152b7e36ded584150733e8392be458125c
BUG: 1443145
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ia3a9b0152b7e36ded584150733e8392be458125c
BUG: 1443145
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: avoid checking the xattr value buffer with string functions.</title>
<updated>2017-08-01T13:14:03+00:00</updated>
<author>
<name>Günther Deschner</name>
<email>gd@samba.org</email>
</author>
<published>2017-07-28T11:38:16+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=ab4ffdac9dec1867f2d9b33242179cf2b347319d'/>
<id>ab4ffdac9dec1867f2d9b33242179cf2b347319d</id>
<content type='text'>
xattrs may very well contain binary, non-text data with leading 0
values. Using strcmp for checking empty values is not the appropriate
thing to do: In the best case, it might treat a binary xattr value
starting with 0 from being cached (and hence also from being reported
back with xattr). In the worst case, we might read beyond the end
of a data blob that does contain any zero byte.

We fix this by checking the length of the data blob and checking
the first byte against 0 if the length is one.

Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
Pair-Programmed-With: Michael Adam &lt;obnox@samba.org&gt;
Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
BUG: 1476324
Reviewed-on: https://review.gluster.org/17910
Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Poornima G &lt;pgurusid@redhat.com&gt;
Tested-by: Poornima G &lt;pgurusid@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
xattrs may very well contain binary, non-text data with leading 0
values. Using strcmp for checking empty values is not the appropriate
thing to do: In the best case, it might treat a binary xattr value
starting with 0 from being cached (and hence also from being reported
back with xattr). In the worst case, we might read beyond the end
of a data blob that does contain any zero byte.

We fix this by checking the length of the data blob and checking
the first byte against 0 if the length is one.

Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
Pair-Programmed-With: Michael Adam &lt;obnox@samba.org&gt;
Change-Id: If723c465a630b8a37b6be58782a2724df7ac6b11
BUG: 1476324
Reviewed-on: https://review.gluster.org/17910
Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Poornima G &lt;pgurusid@redhat.com&gt;
Tested-by: Poornima G &lt;pgurusid@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: Use correct xattr keynames for virtual glusterfs ACLs.</title>
<updated>2017-07-29T20:54:25+00:00</updated>
<author>
<name>Günther Deschner</name>
<email>gd@samba.org</email>
</author>
<published>2017-07-26T16:10:33+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=5fe8555800cbc9818e7c976f63499795a378cd8d'/>
<id>5fe8555800cbc9818e7c976f63499795a378cd8d</id>
<content type='text'>
The "glusterfs.posix_acl." prefix does not catch the glusterfs posix acl
xattr keynames which are

	* "glusterfs.posix.acl" and
	* "glusterfs.posix.default_acl"

Using the GF_POSIX_ACL_ACCESS and GF_POSIX_ACL_DEFAULT defines directly
is the savest option.

Guenther

Change-Id: I5aba64b26b6cbec850ea02316dd9f069400e857f
BUG: 1476295
Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
Reviewed-on: https://review.gluster.org/17909
Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Tested-by: Niels de Vos &lt;ndevos@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The "glusterfs.posix_acl." prefix does not catch the glusterfs posix acl
xattr keynames which are

	* "glusterfs.posix.acl" and
	* "glusterfs.posix.default_acl"

Using the GF_POSIX_ACL_ACCESS and GF_POSIX_ACL_DEFAULT defines directly
is the savest option.

Guenther

Change-Id: I5aba64b26b6cbec850ea02316dd9f069400e857f
BUG: 1476295
Signed-off-by: Guenther Deschner &lt;gd@samba.org&gt;
Reviewed-on: https://review.gluster.org/17909
Reviewed-by: Michael Adam &lt;obnox@samba.org&gt;
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Tested-by: Niels de Vos &lt;ndevos@redhat.com&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>md-cache: Fix the dump of stat inode in .meta and statedump</title>
<updated>2017-06-12T03:53:13+00:00</updated>
<author>
<name>Poornima G</name>
<email>pgurusid@redhat.com</email>
</author>
<published>2017-06-08T05:36:32+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=33b426aa9f62f6c8abb2b537b7a784c5b8090fb3'/>
<id>33b426aa9f62f6c8abb2b537b7a784c5b8090fb3</id>
<content type='text'>
Change-Id: If61ed5e4462e98d18a1370734a0bcee1ed94d82d
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
Reviewed-on: https://review.gluster.org/17491
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: If61ed5e4462e98d18a1370734a0bcee1ed94d82d
Signed-off-by: Poornima G &lt;pgurusid@redhat.com&gt;
Reviewed-on: https://review.gluster.org/17491
Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
NetBSD-regression: NetBSD Build System &lt;jenkins@build.gluster.org&gt;
CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
Reviewed-by: Pranith Kumar Karampuri &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
