<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/cli/src, branch testing-regression-job</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>rpc/transport: Missing a ref on dict while creating transport object</title>
<updated>2019-03-20T13:24:44+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2019-02-26T12:34:18+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f2f07591b2de9ba45bbc3eb4f601d1e9a327190b'/>
<id>f2f07591b2de9ba45bbc3eb4f601d1e9a327190b</id>
<content type='text'>
while creating rpc_tranpsort object, we store a dictionary without
taking a ref on dict but it does an unref during the cleaning of the
transport object.

So the rpc layer expect the caller to take a ref on the dictionary
before passing dict to rpc layer. This leads to a lot of confusion
across the code base and leads to ref leaks.

Semantically, this is not correct. It is the rpc layer responsibility
to take a ref when storing it, and free during the cleanup.

I'm listing down the total issues or leaks across the code base because
of this confusion. These issues are currently present in the upstream
master.

1) changelog_rpc_client_init

2) quota_enforcer_init

3) rpcsvc_create_listeners : when there are two transport, like tcp,rdma.

4) quotad_aggregator_init

5) glusterd: init

6) nfs3_init_state

7) server: init

8) client:init

This patch does the cleanup according to the semantics.

Change-Id: I46373af9630373eb375ee6de0e6f2bbe2a677425
updates: bz#1659708
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
while creating rpc_tranpsort object, we store a dictionary without
taking a ref on dict but it does an unref during the cleaning of the
transport object.

So the rpc layer expect the caller to take a ref on the dictionary
before passing dict to rpc layer. This leads to a lot of confusion
across the code base and leads to ref leaks.

Semantically, this is not correct. It is the rpc layer responsibility
to take a ref when storing it, and free during the cleanup.

I'm listing down the total issues or leaks across the code base because
of this confusion. These issues are currently present in the upstream
master.

1) changelog_rpc_client_init

2) quota_enforcer_init

3) rpcsvc_create_listeners : when there are two transport, like tcp,rdma.

4) quotad_aggregator_init

5) glusterd: init

6) nfs3_init_state

7) server: init

8) client:init

This patch does the cleanup according to the semantics.

Change-Id: I46373af9630373eb375ee6de0e6f2bbe2a677425
updates: bz#1659708
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>inode: don't dump the whole table to CLI</title>
<updated>2019-03-20T07:15:37+00:00</updated>
<author>
<name>Amar Tumballi</name>
<email>amarts@redhat.com</email>
</author>
<published>2019-03-13T04:12:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=6d6a3b298ee81c6c7d93941365852c1bdb42c3c1'/>
<id>6d6a3b298ee81c6c7d93941365852c1bdb42c3c1</id>
<content type='text'>
dumping the whole inode table detail to screen doesn't solve any
purpose. We should be getting only toplevel details on CLI, and then
if one wants to debug further, then they need to get to 'statedump'
to get full details.

Fixes: bz#1580315
Change-Id: Iaf3de94602f9c76832c3c918ffe2ad13c0b0e448
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
dumping the whole inode table detail to screen doesn't solve any
purpose. We should be getting only toplevel details on CLI, and then
if one wants to debug further, then they need to get to 'statedump'
to get full details.

Fixes: bz#1580315
Change-Id: Iaf3de94602f9c76832c3c918ffe2ad13c0b0e448
Signed-off-by: Amar Tumballi &lt;amarts@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>geo-rep: IPv6 support</title>
<updated>2019-03-15T08:53:46+00:00</updated>
<author>
<name>Aravinda VK</name>
<email>avishwan@redhat.com</email>
</author>
<published>2019-03-14T14:36:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=240e1d6821fbb779c3dd73f6f0225d755a5b7cc6'/>
<id>240e1d6821fbb779c3dd73f6f0225d755a5b7cc6</id>
<content type='text'>
`address_family=inet6` needs to be added while mounting master and
slave volumes in gverify script.

New option introduced to gluster cli(`--inet6`) which will be used
internally by geo-rep while calling `gluster volume info
--remote-host=&lt;ipv6&gt;`.

Fixes: bz#1688833
Change-Id: I1e0d42cae07158df043e64a2f991882d8c897837
Signed-off-by: Aravinda VK &lt;avishwan@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
`address_family=inet6` needs to be added while mounting master and
slave volumes in gverify script.

New option introduced to gluster cli(`--inet6`) which will be used
internally by geo-rep while calling `gluster volume info
--remote-host=&lt;ipv6&gt;`.

Fixes: bz#1688833
Change-Id: I1e0d42cae07158df043e64a2f991882d8c897837
Signed-off-by: Aravinda VK &lt;avishwan@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli : fix mem leak during cli_cmd_volume_gsync_set_cbk</title>
<updated>2019-02-19T04:09:33+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2019-01-24T06:44:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=eacc48b96b818ab2d15ed9d3a9a21818feed2826'/>
<id>eacc48b96b818ab2d15ed9d3a9a21818feed2826</id>
<content type='text'>
This patch fixes mem-leak due to excessive use of gf_asprintf
to form dynamic growing string.

Problem: each call to asprintf/vsprintf for extending existing string causes
         a memory leak, because the blob at the original address of existing
         string is not freed and a new location is generated by asprintf.

Tracebacks:
    #2 0x7fdf191b8b3b in gf_vasprintf ../libglusterfs/src/mem-pool.c:236
    #3 0x7fdf191b8d0a in gf_asprintf ../libglusterfs/src/mem-pool.c:256
    #4 0x420cd3 in cli_cmd_volume_gsync_set_cbk ../cli/src/cli-cmd-volume.c:2576

SUMMARY: AddressSanitizer: 255 byte(s) leaked in 3 allocation(s).
....
SUMMARY: AddressSanitizer: 431 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 449 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 397 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 160 byte(s) leaked in 2 allocation(s).
....

updates: bz#1633930
Change-Id: I7e8902f0ed23e640dc17e3dcbdab7ae0579d2dc6
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes mem-leak due to excessive use of gf_asprintf
to form dynamic growing string.

Problem: each call to asprintf/vsprintf for extending existing string causes
         a memory leak, because the blob at the original address of existing
         string is not freed and a new location is generated by asprintf.

Tracebacks:
    #2 0x7fdf191b8b3b in gf_vasprintf ../libglusterfs/src/mem-pool.c:236
    #3 0x7fdf191b8d0a in gf_asprintf ../libglusterfs/src/mem-pool.c:256
    #4 0x420cd3 in cli_cmd_volume_gsync_set_cbk ../cli/src/cli-cmd-volume.c:2576

SUMMARY: AddressSanitizer: 255 byte(s) leaked in 3 allocation(s).
....
SUMMARY: AddressSanitizer: 431 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 449 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 397 byte(s) leaked in 4 allocation(s).
....
SUMMARY: AddressSanitizer: 160 byte(s) leaked in 2 allocation(s).
....

updates: bz#1633930
Change-Id: I7e8902f0ed23e640dc17e3dcbdab7ae0579d2dc6
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>socket: socket event handlers now return void</title>
<updated>2019-02-18T02:45:40+00:00</updated>
<author>
<name>Milind Changire</name>
<email>mchangir@redhat.com</email>
</author>
<published>2019-02-15T08:50:07+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=776ba851c6ee6c265253d44cf1d6e4e3d4a21772'/>
<id>776ba851c6ee6c265253d44cf1d6e4e3d4a21772</id>
<content type='text'>
Problem:
Returning any value from socket event handlers to the event sub-system
doesn't make sense since event sub-system cannot handle socket
sub-system errors.

Solution:
Change return type of all socket event handlers to 'void'

Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
Fixes: bz#1651246
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:
Returning any value from socket event handlers to the event sub-system
doesn't make sense since event sub-system cannot handle socket
sub-system errors.

Solution:
Change return type of all socket event handlers to 'void'

Change-Id: I70dc2c57f12b7ea2fae41120f71aa0d7fe0b2b6f
Fixes: bz#1651246
Signed-off-by: Milind Changire &lt;mchangir@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: Added the group option for volume set</title>
<updated>2019-02-04T12:56:00+00:00</updated>
<author>
<name>Rinku Kothiya</name>
<email>rkothiya@redhat.com</email>
</author>
<published>2019-01-21T11:16:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=f87a3e840306052a120529ea5a190240179078c1'/>
<id>f87a3e840306052a120529ea5a190240179078c1</id>
<content type='text'>
gluster volume set &lt;VOLUME&gt; group &lt;GROUP&gt; is used for setting multiple
pre-defined volume options, but this was undocumented. This patch doc-
ments this feature.

fixes: bz#1243991

Change-Id: Id346cf2537f85179caff32479f09555ce2e72e76
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
gluster volume set &lt;VOLUME&gt; group &lt;GROUP&gt; is used for setting multiple
pre-defined volume options, but this was undocumented. This patch doc-
ments this feature.

fixes: bz#1243991

Change-Id: Id346cf2537f85179caff32479f09555ce2e72e76
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: Added a welcome and help message</title>
<updated>2019-01-21T03:23:23+00:00</updated>
<author>
<name>Rinku Kothiya</name>
<email>rkothiya@redhat.com</email>
</author>
<published>2019-01-14T13:24:20+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=55b40dfbb2551b1507d532a03bdf199acb37bf6a'/>
<id>55b40dfbb2551b1507d532a03bdf199acb37bf6a</id>
<content type='text'>
When gluster command is fired without any arguments it just shows the
prompt, so added a welcome message and info to get help.

fixes: bz#1535528

Change-Id: I627b66b67443716e9270025c1e47b98b6facba13
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When gluster command is fired without any arguments it just shows the
prompt, so added a welcome message and info to get help.

fixes: bz#1535528

Change-Id: I627b66b67443716e9270025c1e47b98b6facba13
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>core: Feature added to accept CidrIp in auth.allow</title>
<updated>2019-01-18T17:13:13+00:00</updated>
<author>
<name>Rinku Kothiya</name>
<email>rkothiya@redhat.com</email>
</author>
<published>2019-01-01T15:36:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=0687b0beb5cc58d5aac9e203f0feebcd7e9eea03'/>
<id>0687b0beb5cc58d5aac9e203f0feebcd7e9eea03</id>
<content type='text'>
Added functionality to gluster volume set auth.allow command to
accept CIDR IP addresses. Modified few functions to isolate cidr
feature so that it prevents other gluster commands such as peer
probe to use cidr format ip. The functions are modified in such
a way that they have an option to enable accepting of cidr
format for other gluster commands if required in furture.

updates: bz#1138841

Change-Id: Ie6734002a7078f1820e5df42d404411cce945e8b
Credits: Mohit Agrawal
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added functionality to gluster volume set auth.allow command to
accept CIDR IP addresses. Modified few functions to isolate cidr
feature so that it prevents other gluster commands such as peer
probe to use cidr format ip. The functions are modified in such
a way that they have an option to enable accepting of cidr
format for other gluster commands if required in furture.

updates: bz#1138841

Change-Id: Ie6734002a7078f1820e5df42d404411cce945e8b
Credits: Mohit Agrawal
Signed-off-by: Rinku Kothiya &lt;rkothiya@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>libglusterfs/src/mem-types.h: remove unused common enums from mem-types.h</title>
<updated>2018-12-30T11:59:27+00:00</updated>
<author>
<name>Yaniv Kaul</name>
<email>ykaul@redhat.com</email>
</author>
<published>2018-11-15T20:05:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=3ce7b5dbf069e7bf09c3470753c21efe03339291'/>
<id>3ce7b5dbf069e7bf09c3470753c21efe03339291</id>
<content type='text'>
They were not used at all, just taking space.
I've also marked all those that are not common really, but used
in just one place - they probably should move there (in follow-up
patches)

As a test, I've removed from the stripe xlator unused private
enums and moved one that was in the common list, but only
used in the stripe code, to be a private enum.

Compile-tested only!

updates: bz#1193929
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
Change-Id: I1158dc1d259f1fd3f69904336c46c9d83cea799f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
They were not used at all, just taking space.
I've also marked all those that are not common really, but used
in just one place - they probably should move there (in follow-up
patches)

As a test, I've removed from the stripe xlator unused private
enums and moved one that was in the common list, but only
used in the stripe code, to be a private enum.

Compile-tested only!

updates: bz#1193929
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
Change-Id: I1158dc1d259f1fd3f69904336c46c9d83cea799f
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: fix memory leak</title>
<updated>2018-12-26T02:17:59+00:00</updated>
<author>
<name>Sunny Kumar</name>
<email>sunkumar@redhat.com</email>
</author>
<published>2018-12-19T21:11:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c3d23b06ce6bda906bdfb9bc8909bf30016c9995'/>
<id>c3d23b06ce6bda906bdfb9bc8909bf30016c9995</id>
<content type='text'>
This patch fixes memory leak in cli/src/cli.c.

Change-Id: I4956c4180b34d4a9e3e6e60eeafba8cb2031896e
updates: bz#1633930
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch fixes memory leak in cli/src/cli.c.

Change-Id: I4956c4180b34d4a9e3e6e60eeafba8cb2031896e
updates: bz#1633930
Signed-off-by: Sunny Kumar &lt;sunkumar@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
