<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/features, branch v3.12.8</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>features/index: Choose different base file on EMLINK error</title>
<updated>2018-04-12T05:20:36+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2018-03-21T12:36:54+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=638e57e091f5c23e5c1d0c3692ecdacf85aa9bc5'/>
<id>638e57e091f5c23e5c1d0c3692ecdacf85aa9bc5</id>
<content type='text'>
Change-Id: I4648816af908539efdc2528608aa2ebf7f0d0e2f
fixes: bz#1565655
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
(cherry picked from commit bb12f2109a01856e8184e13cf984210d20155b13)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I4648816af908539efdc2528608aa2ebf7f0d0e2f
fixes: bz#1565655
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
(cherry picked from commit bb12f2109a01856e8184e13cf984210d20155b13)
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfsd: Memleak in glusterfsd process while  brick mux is on</title>
<updated>2018-04-06T12:47:34+00:00</updated>
<author>
<name>Mohit Agrawal</name>
<email>moagrawa@redhat.com</email>
</author>
<published>2018-02-10T06:55:15+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=479bea17e75d8e75a8901d01b3fd3627bfd8991c'/>
<id>479bea17e75d8e75a8901d01b3fd3627bfd8991c</id>
<content type='text'>
Problem: At the time of stopping the volume while brick multiplex is
         enabled memory is not cleanup from all server side xlators.

Solution: To cleanup memory for all server side xlators call fini
          in glusterfs_handle_terminate after send GF_EVENT_CLEANUP
          notification to top xlator.

&gt; BUG: 1544090
&gt; Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
&gt; (cherry picked from commit 7c3cc485054e4ede1efb358552135b432fb7047a)

&gt;Note: Run all test-cases in separate build (https://review.gluster.org/19574)
&gt;      with same patch after enable brick mux forcefully, all test cases are
&gt;      passed.

BUG: 1549473
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
Change-Id: Ia10dc7f2605aa50f2b90b3fe4eb380ba9299e2fc
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: At the time of stopping the volume while brick multiplex is
         enabled memory is not cleanup from all server side xlators.

Solution: To cleanup memory for all server side xlators call fini
          in glusterfs_handle_terminate after send GF_EVENT_CLEANUP
          notification to top xlator.

&gt; BUG: 1544090
&gt; Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
&gt; (cherry picked from commit 7c3cc485054e4ede1efb358552135b432fb7047a)

&gt;Note: Run all test-cases in separate build (https://review.gluster.org/19574)
&gt;      with same patch after enable brick mux forcefully, all test cases are
&gt;      passed.

BUG: 1549473
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
Change-Id: Ia10dc7f2605aa50f2b90b3fe4eb380ba9299e2fc
</pre>
</div>
</content>
</entry>
<entry>
<title>selinux-xlator : validate dict before calling dict_rename_key()</title>
<updated>2018-02-02T06:47:32+00:00</updated>
<author>
<name>Jiffin Tony Thottan</name>
<email>jthottan@redhat.com</email>
</author>
<published>2018-01-17T12:33:11+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=35e2168a3cd8fb226701b5d3bac4507924db4a36'/>
<id>35e2168a3cd8fb226701b5d3bac4507924db4a36</id>
<content type='text'>
Upstream reference
&gt;Change-Id: I71da3b64e5e8c82e8842e119b2b05da3e2ace550
&gt;BUG: 1535772
&gt;Signed-off-by: Jiffin Tony Thottan &lt;jthottan@redhat.com&gt;
&gt;(cherry picked from commit bee06ccd7b80e3f5804f0c7c7c56936fed6d2b4e)

Change-Id: I71da3b64e5e8c82e8842e119b2b05da3e2ace550
BUG: 1533269
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Upstream reference
&gt;Change-Id: I71da3b64e5e8c82e8842e119b2b05da3e2ace550
&gt;BUG: 1535772
&gt;Signed-off-by: Jiffin Tony Thottan &lt;jthottan@redhat.com&gt;
&gt;(cherry picked from commit bee06ccd7b80e3f5804f0c7c7c56936fed6d2b4e)

Change-Id: I71da3b64e5e8c82e8842e119b2b05da3e2ace550
BUG: 1533269
</pre>
</div>
</content>
</entry>
<entry>
<title>feature/bitrot: remove internal xattrs from lookup cbk</title>
<updated>2017-12-19T04:39:05+00:00</updated>
<author>
<name>Ravishankar N</name>
<email>ravishankar@redhat.com</email>
</author>
<published>2017-12-11T10:44:03+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=05e5c2a1f6ebc7659181d1344031da0ee77cb933'/>
<id>05e5c2a1f6ebc7659181d1344031da0ee77cb933</id>
<content type='text'>
Problem:
afr requests all xattrs in lookup via the list-xattr key. If bitrot is
enabled and later disabled, or if the bitrot xattrs were present due to
an older version of bitrot which used to create the xattrs without
enabling the feature, the xattrs (trusted.bit-rot.version in particular)
was not getting filtered and ended up reaching the client stack. AFR, on
noticing different values of the xattr across bricks of the replica,
started triggering spurious metadata heals.

Fix:
Filter all internal xattrs in bitrot xlator before unwinding lookup,
(f)getxattr.

Thanks to Kotresh for the help in RCA'ing.

Change-Id: I5bc70e4b901359c3daefc67b8e4fa6ddb47f046c
BUG: 1527276
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
(cherry picked from commit d341f20230b9921391aff22337eaf9be82f44d88)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
afr requests all xattrs in lookup via the list-xattr key. If bitrot is
enabled and later disabled, or if the bitrot xattrs were present due to
an older version of bitrot which used to create the xattrs without
enabling the feature, the xattrs (trusted.bit-rot.version in particular)
was not getting filtered and ended up reaching the client stack. AFR, on
noticing different values of the xattr across bricks of the replica,
started triggering spurious metadata heals.

Fix:
Filter all internal xattrs in bitrot xlator before unwinding lookup,
(f)getxattr.

Thanks to Kotresh for the help in RCA'ing.

Change-Id: I5bc70e4b901359c3daefc67b8e4fa6ddb47f046c
BUG: 1527276
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
(cherry picked from commit d341f20230b9921391aff22337eaf9be82f44d88)
</pre>
</div>
</content>
</entry>
<entry>
<title>features/locks: Fix memory leaks</title>
<updated>2017-11-30T06:42:25+00:00</updated>
<author>
<name>Xavier Hernandez</name>
<email>jahernan@redhat.com</email>
</author>
<published>2017-11-20T09:51:09+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=29b633ad5d3cd97951679e47651f552f0a96dc5d'/>
<id>29b633ad5d3cd97951679e47651f552f0a96dc5d</id>
<content type='text'>
Backport of:
&gt; BUG: 1515161

Change-Id: Ic1d2e17a7d14389b6734d1b88bd28c0a2907bbd6
BUG: 1517689
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport of:
&gt; BUG: 1515161

Change-Id: Ic1d2e17a7d14389b6734d1b88bd28c0a2907bbd6
BUG: 1517689
Signed-off-by: Xavier Hernandez &lt;jahernan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/worm: Adding check to newloc when doing rename</title>
<updated>2017-10-25T14:07:19+00:00</updated>
<author>
<name>luneo7</name>
<email>luneo7@gmail.com</email>
</author>
<published>2017-10-10T20:08:22+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=80fbfef5c70b67838a391041e80a67e41c9142b6'/>
<id>80fbfef5c70b67838a391041e80a67e41c9142b6</id>
<content type='text'>
Problem: Since rename didn't check if newloc exists and it's
retention state it was possible to rename a new file that wasn't
in retention over a existing file that was in read-only state.

Cherry picked from commit 00a4dc0:
&gt; Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
&gt; BUG: 1484490
&gt; Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
&gt; Reviewed-on: https://review.gluster.org/18104
&gt; Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt; Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
&gt; Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1484489
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: Since rename didn't check if newloc exists and it's
retention state it was possible to rename a new file that wasn't
in retention over a existing file that was in read-only state.

Cherry picked from commit 00a4dc0:
&gt; Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
&gt; BUG: 1484490
&gt; Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
&gt; Reviewed-on: https://review.gluster.org/18104
&gt; Tested-by: jiffin tony Thottan &lt;jthottan@redhat.com&gt;
&gt; Tested-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; Reviewed-by: Prashanth Pai &lt;ppai@redhat.com&gt;
&gt; Reviewed-by: Karthik U S &lt;ksubrahm@redhat.com&gt;
&gt; Reviewed-by: Amar Tumballi &lt;amarts@redhat.com&gt;

Change-Id: I63c6bbabb7bb456ebedf201cc77b878ffda62229
BUG: 1484489
Signed-off-by: luneo7 &lt;luneo7@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libgfchangelog: Fix possible null pointer dereference</title>
<updated>2017-10-25T11:38:12+00:00</updated>
<author>
<name>Kotresh HR</name>
<email>khiremat@redhat.com</email>
</author>
<published>2017-10-23T10:46:49+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=5632750c91f349bb10a0a6e5cded02f5efc5b828'/>
<id>5632750c91f349bb10a0a6e5cded02f5efc5b828</id>
<content type='text'>
If pthread_attr_init fails, gf_msg uses this-&gt;name
where 'this' is not initialized yet. This patch fixes
the same.

&gt; Change-Id: Ie004cbe1015a0d62fc3b5512e8954c5606eeeb5f
&gt; Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
&gt; BUG: 1505325
(cherry picked from commit 738c38f0efa7b4d4dab0cf23d00589d68e4eb88d)


Change-Id: Ie004cbe1015a0d62fc3b5512e8954c5606eeeb5f
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
BUG: 1505856
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
If pthread_attr_init fails, gf_msg uses this-&gt;name
where 'this' is not initialized yet. This patch fixes
the same.

&gt; Change-Id: Ie004cbe1015a0d62fc3b5512e8954c5606eeeb5f
&gt; Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
&gt; BUG: 1505325
(cherry picked from commit 738c38f0efa7b4d4dab0cf23d00589d68e4eb88d)


Change-Id: Ie004cbe1015a0d62fc3b5512e8954c5606eeeb5f
Signed-off-by: Kotresh HR &lt;khiremat@redhat.com&gt;
BUG: 1505856
</pre>
</div>
</content>
</entry>
<entry>
<title>features/locks: Maintain separation of lock-&gt;client_pid, flock-&gt;l_pid</title>
<updated>2017-10-06T06:30:35+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2017-09-22T07:20:43+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=95a32b68d03ba34f3e0d6614cab3894351e2e15b'/>
<id>95a32b68d03ba34f3e0d6614cab3894351e2e15b</id>
<content type='text'>
Problem:
grant_blocked_locks() constructs flock from lock. Locks xlator uses
frame-&gt;root-&gt;pid interchangeably flock-&gt;l_pid. With gNFS frame-&gt;root-&gt;pid
(which translates to lock-&gt;client_pid) is not same as flock-&gt;l_pid, this leads
to lk's cbk returning flock with l_pid from lock-&gt;client_pid instead of input
flock-&gt;l_pid. This triggers EC's error code path leading to failure of lk call,
because the response' flock-&gt;l_pid is different from request's flock-&gt;l_pid.

Fix:
Maintain separation of lock-&gt;client_pid, flock-&gt;l_pid. Always unwind with
flock with correct pid.

 &gt;BUG: 1472961
 &gt;Change-Id: Ifab35c458662cf0082b902f37782f8c5321d823d
 &gt;Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
 &gt;(cherry picked from commit 572b4bf889d903dcaed49a57a75270a763dc259d)

BUG: 1496326
Change-Id: Ifab35c458662cf0082b902f37782f8c5321d823d
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
grant_blocked_locks() constructs flock from lock. Locks xlator uses
frame-&gt;root-&gt;pid interchangeably flock-&gt;l_pid. With gNFS frame-&gt;root-&gt;pid
(which translates to lock-&gt;client_pid) is not same as flock-&gt;l_pid, this leads
to lk's cbk returning flock with l_pid from lock-&gt;client_pid instead of input
flock-&gt;l_pid. This triggers EC's error code path leading to failure of lk call,
because the response' flock-&gt;l_pid is different from request's flock-&gt;l_pid.

Fix:
Maintain separation of lock-&gt;client_pid, flock-&gt;l_pid. Always unwind with
flock with correct pid.

 &gt;BUG: 1472961
 &gt;Change-Id: Ifab35c458662cf0082b902f37782f8c5321d823d
 &gt;Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
 &gt;(cherry picked from commit 572b4bf889d903dcaed49a57a75270a763dc259d)

BUG: 1496326
Change-Id: Ifab35c458662cf0082b902f37782f8c5321d823d
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>features/shard: Change default shard-block-size to 64MB</title>
<updated>2017-09-28T20:53:46+00:00</updated>
<author>
<name>Krutika Dhananjay</name>
<email>kdhananj@redhat.com</email>
</author>
<published>2017-09-08T12:34:50+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=bfc8b09f233a3dfcce776da37389b6c83e4d85dc'/>
<id>bfc8b09f233a3dfcce776da37389b6c83e4d85dc</id>
<content type='text'>
        Backport of:
        &gt; Change-Id: I55fa87e07136cff10b0d725ee24dd3151016e64e
        &gt; BUG: 1489823
        &gt; Reviewed-on: https://review.gluster.org/18243
        &gt; cherry picked from commit e4a59b384f5bbaaeb937a53cef64f4e388f85153

Change-Id: I55fa87e07136cff10b0d725ee24dd3151016e64e
BUG: 1492026
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Backport of:
        &gt; Change-Id: I55fa87e07136cff10b0d725ee24dd3151016e64e
        &gt; BUG: 1489823
        &gt; Reviewed-on: https://review.gluster.org/18243
        &gt; cherry picked from commit e4a59b384f5bbaaeb937a53cef64f4e388f85153

Change-Id: I55fa87e07136cff10b0d725ee24dd3151016e64e
BUG: 1492026
Signed-off-by: Krutika Dhananjay &lt;kdhananj@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>arbiter: return ENOSYS for 'non readable' FOPs</title>
<updated>2017-09-10T18:34:38+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2017-08-23T16:18:24+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/glusterfs.git/commit/?id=143714d96eff50501b1a5a3debf794cae9f91005'/>
<id>143714d96eff50501b1a5a3debf794cae9f91005</id>
<content type='text'>
AFR marks the arbiter as 'non readable'. This has been introduced with
commit 8ab87137 (afr: do not set arbiter as a readable subvol in inode
context). arbiter_readv() should not get called anymore, so it could be
removed. However, it is a good defensive approach to have all the inode
read FOPs that can not be handled by the arbiter to return ENOSYS.

&gt; Reviewed-on: https://review.gluster.org/18103
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
(cherry picked from commit b1352d0974328b367afa7360e9523585efb7178d)

Change-Id: I6ea41680832859bd6790dc8d7440ee98d38205fc
BUG: 1489511
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reviewed-on: https://review.gluster.org/18227
Smoke: Gluster 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>
AFR marks the arbiter as 'non readable'. This has been introduced with
commit 8ab87137 (afr: do not set arbiter as a readable subvol in inode
context). arbiter_readv() should not get called anymore, so it could be
removed. However, it is a good defensive approach to have all the inode
read FOPs that can not be handled by the arbiter to return ENOSYS.

&gt; Reviewed-on: https://review.gluster.org/18103
&gt; Smoke: Gluster Build System &lt;jenkins@build.gluster.org&gt;
&gt; CentOS-regression: Gluster Build System &lt;jenkins@build.gluster.org&gt;
(cherry picked from commit b1352d0974328b367afa7360e9523585efb7178d)

Change-Id: I6ea41680832859bd6790dc8d7440ee98d38205fc
BUG: 1489511
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Signed-off-by: Ravishankar N &lt;ravishankar@redhat.com&gt;
Reviewed-on: https://review.gluster.org/18227
Smoke: Gluster 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>
