<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/xlators/mgmt/glusterd/src/glusterd-mgmt.c, branch v8.2</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>glusterd: rebalance start should fail when quorum is not met</title>
<updated>2019-10-10T15:21:39+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2019-10-10T15:10:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=83173908b3e3a02ebb6eb17963f0889c7ecff987'/>
<id>83173908b3e3a02ebb6eb17963f0889c7ecff987</id>
<content type='text'>
rebalance start should not succeed if quorum is not met.
this patch adds a condition to check whether quorum is met
in pre-validation stage.

fixes: bz#1760467
Change-Id: Ic7d0d08f69e4bc6d5e7abae713ec1881531c8ad4
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
rebalance start should not succeed if quorum is not met.
this patch adds a condition to check whether quorum is met
in pre-validation stage.

fixes: bz#1760467
Change-Id: Ic7d0d08f69e4bc6d5e7abae713ec1881531c8ad4
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd/tier: remove tier related code from glusterd</title>
<updated>2019-05-27T07:50:24+00:00</updated>
<author>
<name>Hari Gowtham</name>
<email>hgowtham@redhat.com</email>
</author>
<published>2019-05-02T13:03:34+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=e1cc4275583dfd8ae8d0433587f39854c1851794'/>
<id>e1cc4275583dfd8ae8d0433587f39854c1851794</id>
<content type='text'>
The handler functions are pointed to dummy functions.
The switch case handling for tier also have been moved to
point default case to avoid issues, if reintroduced.

The tier changes in DHT still remain as such.

updates: bz#1693692

Change-Id: I80d80c9a3eb862b4440a36b31ae82b2e9d92e4dc
Signed-off-by: Hari Gowtham &lt;hgowtham@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The handler functions are pointed to dummy functions.
The switch case handling for tier also have been moved to
point default case to avoid issues, if reintroduced.

The tier changes in DHT still remain as such.

updates: bz#1693692

Change-Id: I80d80c9a3eb862b4440a36b31ae82b2e9d92e4dc
Signed-off-by: Hari Gowtham &lt;hgowtham@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: Add gluster volume stop operation to glusterd_validate_quorum()</title>
<updated>2019-05-11T04:14:47+00:00</updated>
<author>
<name>Vishal Pandey</name>
<email>vpandey@redhat.com</email>
</author>
<published>2019-05-09T09:07:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=b4db967224db3b16bc1d749fc2cb6f795363362d'/>
<id>b4db967224db3b16bc1d749fc2cb6f795363362d</id>
<content type='text'>
ISSUE: gluster volume stop succeeds even if quorum is not met.

Fix: Add GD_OP_STOP_VOLUME to gluster_validate_quorum in 
glusterd_mgmt_v3_pre_validate ().

Since the volume stop command has been ported from synctask to mgmt_v3,
the quorum check was missed out.

Change-Id: I7a634ad89ec2e286ea262d7952061efad5360042
fixes: bz#1690753
Signed-off-by: Vishal Pandey &lt;vpandey@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
ISSUE: gluster volume stop succeeds even if quorum is not met.

Fix: Add GD_OP_STOP_VOLUME to gluster_validate_quorum in 
glusterd_mgmt_v3_pre_validate ().

Since the volume stop command has been ported from synctask to mgmt_v3,
the quorum check was missed out.

Change-Id: I7a634ad89ec2e286ea262d7952061efad5360042
fixes: bz#1690753
Signed-off-by: Vishal Pandey &lt;vpandey@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: coverity fixes</title>
<updated>2019-04-25T06:39:16+00:00</updated>
<author>
<name>Atin Mukherjee</name>
<email>amukherj@redhat.com</email>
</author>
<published>2019-04-24T16:32:51+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c827682e4df44ec6aaae3780c325568fb43053ff'/>
<id>c827682e4df44ec6aaae3780c325568fb43053ff</id>
<content type='text'>
Addresses the following:

* CID 1124776:  Resource leaks  (RESOURCE_LEAK) - Variable "aa" going out
of scope leaks the storage it points to in glusterd-volgen.c

* Bunch of CHECKED_RETURN defects in the callers of synctask_barrier_init

* CID 1400755:  Error handling issues  (CHECKED_RETURN) - Calling
"gf_is_service_running" without checking return value in
xlators/mgmt/glusterd/src/glusterd-shd-svc.c: 671 in
glusterd_shdsvc_stop()

* CID 1400745:  Memory - illegal accesses  (USE_AFTER_FREE) - Dereferencing
freed pointer "volinfo" in /xlators/mgmt/glusterd/src/glusterd-shd-svc.c: 460 in glusterd_shdsvc_start()

* CID 1400742:  Program hangs  (LOCK) - adding annotation to fix this
false positive

Updates: bz#789278
Change-Id: I02f16e7eeb8c5cf72f7d0b29d00df4f03b3718b3
Signed-off-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Addresses the following:

* CID 1124776:  Resource leaks  (RESOURCE_LEAK) - Variable "aa" going out
of scope leaks the storage it points to in glusterd-volgen.c

* Bunch of CHECKED_RETURN defects in the callers of synctask_barrier_init

* CID 1400755:  Error handling issues  (CHECKED_RETURN) - Calling
"gf_is_service_running" without checking return value in
xlators/mgmt/glusterd/src/glusterd-shd-svc.c: 671 in
glusterd_shdsvc_stop()

* CID 1400745:  Memory - illegal accesses  (USE_AFTER_FREE) - Dereferencing
freed pointer "volinfo" in /xlators/mgmt/glusterd/src/glusterd-shd-svc.c: 460 in glusterd_shdsvc_start()

* CID 1400742:  Program hangs  (LOCK) - adding annotation to fix this
false positive

Updates: bz#789278
Change-Id: I02f16e7eeb8c5cf72f7d0b29d00df4f03b3718b3
Signed-off-by: Atin Mukherjee &lt;amukherj@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: glusterd memory leak while running "gluster v profile" in a loop</title>
<updated>2019-03-05T14:56:10+00:00</updated>
<author>
<name>Mohit Agrawal</name>
<email>moagrawal@redhat.com</email>
</author>
<published>2019-03-05T08:09:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=9374484917466dff4688d96ff7faa0de1c804a6c'/>
<id>9374484917466dff4688d96ff7faa0de1c804a6c</id>
<content type='text'>
Problem: glusterd has memory leak while running "gluster v profile"
         in a loop

Solution: Resolve leak code path to avoid leak

Change-Id: Id608703ff6d0ad34ed8f921a5d25544e24cfadcd
fixes: bz#1685414
Signed-off-by: Mohit Agrawal &lt;moagrawal@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: glusterd has memory leak while running "gluster v profile"
         in a loop

Solution: Resolve leak code path to avoid leak

Change-Id: Id608703ff6d0ad34ed8f921a5d25544e24cfadcd
fixes: bz#1685414
Signed-off-by: Mohit Agrawal &lt;moagrawal@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: aggregate rsp from peers for profile command</title>
<updated>2019-01-03T14:58:30+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2019-01-03T13:39:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=0d4535c8db7b4be3fcee685d12f6974f7af89810'/>
<id>0d4535c8db7b4be3fcee685d12f6974f7af89810</id>
<content type='text'>
When we run profile info command, it should display statistics
of all the bricks of the volume. To display information of bricks
which are hosted on peers, we need to aggregate the response from
peers.

For profile info command, all the statistics will be added into
the dictionary in brick-op phase. To aggregate the information from
peers, we need to call glusterd_syncop_aggr_rsp_dict() in brick-op
call back function.

fixes: bz#1663223

Change-Id: I5f5890c3d01974747f829128ab74be6071f4aa30
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When we run profile info command, it should display statistics
of all the bricks of the volume. To display information of bricks
which are hosted on peers, we need to aggregate the response from
peers.

For profile info command, all the statistics will be added into
the dictionary in brick-op phase. To aggregate the information from
peers, we need to call glusterd_syncop_aggr_rsp_dict() in brick-op
call back function.

fixes: bz#1663223

Change-Id: I5f5890c3d01974747f829128ab74be6071f4aa30
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mgmt/glusterd: fix clang warning</title>
<updated>2018-12-29T02:51:24+00:00</updated>
<author>
<name>Sheetal Pamecha</name>
<email>sheetal.pamecha08@gmail.com</email>
</author>
<published>2018-12-20T22:29:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=cd29723ab1a572fd9c2ceb3414b11d654cb9a08a'/>
<id>cd29723ab1a572fd9c2ceb3414b11d654cb9a08a</id>
<content type='text'>
Attempt to free rsp.dict.dict_val twice

Change-Id: I5dbc50430f59ca8d0c739b0fbe95d71981852889
Updates: bz#1622665
Signed-off-by: Sheetal Pamecha &lt;sheetal.pamecha08@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Attempt to free rsp.dict.dict_val twice

Change-Id: I5dbc50430f59ca8d0c739b0fbe95d71981852889
Updates: bz#1622665
Signed-off-by: Sheetal Pamecha &lt;sheetal.pamecha08@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: migrating rebalance commands to mgmt_v3 framework</title>
<updated>2018-12-18T04:01:52+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2018-11-30T10:46:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=0b4b111fbd80a5d400a07d61e2b99f230f9be76f'/>
<id>0b4b111fbd80a5d400a07d61e2b99f230f9be76f</id>
<content type='text'>
Current rebalance commands use the op_state machine framework.
Porting it to use the mgmt_v3 framework.

Change-Id: I6faf4a6335c2e2f3d54bbde79908a7749e4613e7
fixes: bz#1655827
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Current rebalance commands use the op_state machine framework.
Porting it to use the mgmt_v3 framework.

Change-Id: I6faf4a6335c2e2f3d54bbde79908a7749e4613e7
fixes: bz#1655827
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: migrating profile commands to mgmt_v3 framework</title>
<updated>2018-12-04T16:21:42+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2018-11-08T13:20:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=e48678567a5fb01166a065f9e192b80e721e4181'/>
<id>e48678567a5fb01166a065f9e192b80e721e4181</id>
<content type='text'>
Current profile commands use the op_state machine framework.
Porting it to use the mgmt_v3 framework.

The following tests were performed on the patch:
case 1:
1. On a 3 node cluster, created and started 3 volumes
2. Mounted all the three volumes and wrote some data
3. Started profile operation for all the volumes
4. Ran "gluster v status" from N1,
       "gluster v profile &lt;volname1&gt; info" form N2,
       "gluster v profile &lt;volname2&gt; info" from N3 simultaneously in a
   loop for around 10000 times
5. Didn't find any cores generated.

case 2:
1. Repeat the steps 1,2 and 3 from case 1.
2. Ran "gluster v status" from N1,
       "gluster v profile &lt;volname1&gt; info" form N2(terminal 1),
       "gluster v profile &lt;volname2&gt; info" from N2(terminal 2)
   simultaneously in a loop.
3. No cores were generated.

fixes: bz#1654181
Change-Id: I83044cf5aee3970ef94066c89fcc41783ed468a6
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Current profile commands use the op_state machine framework.
Porting it to use the mgmt_v3 framework.

The following tests were performed on the patch:
case 1:
1. On a 3 node cluster, created and started 3 volumes
2. Mounted all the three volumes and wrote some data
3. Started profile operation for all the volumes
4. Ran "gluster v status" from N1,
       "gluster v profile &lt;volname1&gt; info" form N2,
       "gluster v profile &lt;volname2&gt; info" from N3 simultaneously in a
   loop for around 10000 times
5. Didn't find any cores generated.

case 2:
1. Repeat the steps 1,2 and 3 from case 1.
2. Ran "gluster v status" from N1,
       "gluster v profile &lt;volname1&gt; info" form N2(terminal 1),
       "gluster v profile &lt;volname2&gt; info" from N2(terminal 2)
   simultaneously in a loop.
3. No cores were generated.

fixes: bz#1654181
Change-Id: I83044cf5aee3970ef94066c89fcc41783ed468a6
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: perform rcu_read_lock/unlock() under cleanup_lock mutex</title>
<updated>2018-12-03T17:03:57+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2018-11-28T10:43:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=2bb0e89e4bb113a93c6e786446a140cd99261af8'/>
<id>2bb0e89e4bb113a93c6e786446a140cd99261af8</id>
<content type='text'>
Problem: glusterd should not try to acquire locks on any resources,
when it already received a SIGTERM and cleanup is started. Otherwise
we might hit segfault, since the thread which is going through
cleanup path will be freeing up the resouces and some other thread
might be trying to acquire locks on freed resources.

Solution: perform rcu_read_lock/unlock() under cleanup_lock mutex.

fixes: bz#1654270
Change-Id: I87a97cfe4f272f74f246d688660934638911ce54
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: glusterd should not try to acquire locks on any resources,
when it already received a SIGTERM and cleanup is started. Otherwise
we might hit segfault, since the thread which is going through
cleanup path will be freeing up the resouces and some other thread
might be trying to acquire locks on freed resources.

Solution: perform rcu_read_lock/unlock() under cleanup_lock mutex.

fixes: bz#1654270
Change-Id: I87a97cfe4f272f74f246d688660934638911ce54
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
