<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gluster-block.git/utils, branch v0.3</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/'/>
<entry>
<title>socket: switch to MT-safe get host addr info</title>
<updated>2017-09-19T05:50:32+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-09-19T03:13:43+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=149c72ca069fd5c1fb8960607d7443536995d235'/>
<id>149c72ca069fd5c1fb8960607d7443536995d235</id>
<content type='text'>
This was fixed in an attempt to clean the sockfd leaks

Change-Id: Icd82635134050c83167a48b451b347f5c2b9bf39
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This was fixed in an attempt to clean the sockfd leaks

Change-Id: Icd82635134050c83167a48b451b347f5c2b9bf39
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rpc: switch to MT-safe block RPC routines</title>
<updated>2017-09-19T04:07:48+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-09-18T14:19:10+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=3d0953aa99eed434a1977de3131b264c48fca64b'/>
<id>3d0953aa99eed434a1977de3131b264c48fca64b</id>
<content type='text'>
blockResponse *
block_delete_1(blockDelete *argp, CLIENT *clnt)
{
        static blockResponse clnt_res; &lt;&lt;&lt;&lt;&lt;&lt;-------- Same memory is used by everyone

        memset((char *)&amp;clnt_res, 0, sizeof(clnt_res)); &lt;&lt;&lt;&lt;&lt;---- Here memset is happening
        if (clnt_call (clnt, BLOCK_DELETE,
                (xdrproc_t) xdr_blockDelete, (caddr_t) argp,
                (xdrproc_t) xdr_blockResponse, (caddr_t) &amp;clnt_res,
                TIMEOUT) != RPC_SUCCESS) {
                return (NULL);
        }
        return (&amp;clnt_res); &lt;&lt;&lt;&lt;&lt;---- ptr to this memory is returned.
}

So while Thread-1 is returned "return (&amp;clnt_res);" another thread could be
doing "memset((char *)&amp;clnt_res, 0, sizeof(clnt_res));"

This seem to be a day-1 gluster-blockd bug from the looks of it.

Change-Id: I3fc76d7814c4fe5b286577586ec44d752dcc73f0
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
blockResponse *
block_delete_1(blockDelete *argp, CLIENT *clnt)
{
        static blockResponse clnt_res; &lt;&lt;&lt;&lt;&lt;&lt;-------- Same memory is used by everyone

        memset((char *)&amp;clnt_res, 0, sizeof(clnt_res)); &lt;&lt;&lt;&lt;&lt;---- Here memset is happening
        if (clnt_call (clnt, BLOCK_DELETE,
                (xdrproc_t) xdr_blockDelete, (caddr_t) argp,
                (xdrproc_t) xdr_blockResponse, (caddr_t) &amp;clnt_res,
                TIMEOUT) != RPC_SUCCESS) {
                return (NULL);
        }
        return (&amp;clnt_res); &lt;&lt;&lt;&lt;&lt;---- ptr to this memory is returned.
}

So while Thread-1 is returned "return (&amp;clnt_res);" another thread could be
doing "memset((char *)&amp;clnt_res, 0, sizeof(clnt_res));"

This seem to be a day-1 gluster-blockd bug from the looks of it.

Change-Id: I3fc76d7814c4fe5b286577586ec44d752dcc73f0
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>misc: fix warnings</title>
<updated>2017-08-29T17:30:13+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-29T16:05:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=1a0e590851fcbf7e4d8299f619625c1d31754c03'/>
<id>1a0e590851fcbf7e4d8299f619625c1d31754c03</id>
<content type='text'>
Change-Id: I11274ad59925ec3d034baefc2cc2e307afa45479
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I11274ad59925ec3d034baefc2cc2e307afa45479
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gluster-block: parse remote command outputs</title>
<updated>2017-08-28T15:26:04+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-22T11:18:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=64ba10f39774607b32e1f71b2852d4f34fde378f'/>
<id>64ba10f39774607b32e1f71b2852d4f34fde378f</id>
<content type='text'>
Change-Id: Ic2317843a8bd882fc26233373a4b4c35b13f24c6
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: Ic2317843a8bd882fc26233373a4b4c35b13f24c6
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>gluster-block: use targetcli interactive mode</title>
<updated>2017-08-28T09:36:00+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-16T06:48:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=1316624066cc1ff821f892ea6601a63ca2d0094a'/>
<id>1316624066cc1ff821f892ea6601a63ca2d0094a</id>
<content type='text'>
Currently, on each targetcli create call, rtslib will rebuild its bs_cache, so
as the /sys/kernel/config/target/core dir gets more entries this takes longer
and longer to scan. Hence using repetitive targetcli in the block create
for creating iqn, backend, setting acls, setting globals will induce too
much delay in block create. As the number of blocks on the node increases,
the delay will be too longer.

This does not happen if we open targetcli in interactive mode and just do
multiple create commands form it, since the bs_cache is build once.

Read More:
https://goo.gl/8aYT38

Change-Id: I2be78a748e013f253ce8f99746989a1cf735a56f
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently, on each targetcli create call, rtslib will rebuild its bs_cache, so
as the /sys/kernel/config/target/core dir gets more entries this takes longer
and longer to scan. Hence using repetitive targetcli in the block create
for creating iqn, backend, setting acls, setting globals will induce too
much delay in block create. As the number of blocks on the node increases,
the delay will be too longer.

This does not happen if we open targetcli in interactive mode and just do
multiple create commands form it, since the bs_cache is build once.

Read More:
https://goo.gl/8aYT38

Change-Id: I2be78a748e013f253ce8f99746989a1cf735a56f
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rpc: use port 24010 for all gluster-blockd management</title>
<updated>2017-08-24T06:43:39+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-24T06:43:39+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=91d9da62ce95a14264950aaf2c100e089c455646'/>
<id>91d9da62ce95a14264950aaf2c100e089c455646</id>
<content type='text'>
It looks like 24006 port is already registered by some other service,
and from [1] it looks like 24007 - 24241 are unassigned.

Currently,
24007 -&gt; glusterd (tcp)
24008 -&gt; glusterd (rdma)
24009 -&gt; glustereventsd

so for gluster-blockd communications lets choose port 24010

[1] https://goo.gl/B2A4RU

Change-Id: I7d9f14b9897e479cececd2271ebf8a975d26ef71
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It looks like 24006 port is already registered by some other service,
and from [1] it looks like 24007 - 24241 are unassigned.

Currently,
24007 -&gt; glusterd (tcp)
24008 -&gt; glusterd (rdma)
24009 -&gt; glustereventsd

so for gluster-blockd communications lets choose port 24010

[1] https://goo.gl/B2A4RU

Change-Id: I7d9f14b9897e479cececd2271ebf8a975d26ef71
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>logger: support logdir choosing via Environment variable</title>
<updated>2017-08-17T08:52:55+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-17T05:51:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=b535c44fdd2b71c50a8fcbcf1e1e1c2d1c0340e9'/>
<id>b535c44fdd2b71c50a8fcbcf1e1e1c2d1c0340e9</id>
<content type='text'>
Currently the default logdir is DATADIR /log/gluster-block/

This patch will provide a way to change this default logdir via Env variable
$ export GB_LOGDIR=/var/log/gluster-block-new-path/

Note: make sure to restart the processes (cli &amp; daemon) after you set GB_LOGDIR

Change-Id: Id142e4a4dfe7b6ebc9cf8296b8ceb8bff37691b8
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Currently the default logdir is DATADIR /log/gluster-block/

This patch will provide a way to change this default logdir via Env variable
$ export GB_LOGDIR=/var/log/gluster-block-new-path/

Note: make sure to restart the processes (cli &amp; daemon) after you set GB_LOGDIR

Change-Id: Id142e4a4dfe7b6ebc9cf8296b8ceb8bff37691b8
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>utils: fix trivial compile warning</title>
<updated>2017-07-04T18:28:59+00:00</updated>
<author>
<name>Niels de Vos</name>
<email>ndevos@redhat.com</email>
</author>
<published>2017-07-04T13:34:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=0a21a556523933781151189f0d0f98e2c03268f0'/>
<id>0a21a556523933781151189f0d0f98e2c03268f0</id>
<content type='text'>
The following warning is reported with Fedora Rawhide (F-27) that comes
with an updated gcc version (7.1.1):

  utils.c:217:21: warning: '*' in boolean context, suggest '&amp;&amp;' instead [-Wint-in-bool-context]
     if (!tmp &amp;&amp; (size * count)) {
                 ~~~~~~^~~~~~~~

Change-Id: If1645e0e1cc1eaa1d8261914918c5a5be13d6dd8
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The following warning is reported with Fedora Rawhide (F-27) that comes
with an updated gcc version (7.1.1):

  utils.c:217:21: warning: '*' in boolean context, suggest '&amp;&amp;' instead [-Wint-in-bool-context]
     if (!tmp &amp;&amp; (size * count)) {
                 ~~~~~~^~~~~~~~

Change-Id: If1645e0e1cc1eaa1d8261914918c5a5be13d6dd8
Signed-off-by: Niels de Vos &lt;ndevos@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Don't let LOG segfault if log dir does not exist - fall back to stderr.</title>
<updated>2017-06-22T16:51:59+00:00</updated>
<author>
<name>Michael Adam</name>
<email>obnox@redhat.com</email>
</author>
<published>2017-06-22T12:41:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=a2dff3381ac1d14bd42d478a6c96216750009741'/>
<id>a2dff3381ac1d14bd42d478a6c96216750009741</id>
<content type='text'>
Change-Id: I65ad54381362280d9a5596e48aa3242f1160fd2d
Signed-off-by: Michael Adam &lt;obnox@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I65ad54381362280d9a5596e48aa3242f1160fd2d
Signed-off-by: Michael Adam &lt;obnox@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>block: add support to prealloc = full | no  option</title>
<updated>2017-06-22T11:00:46+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-06-12T06:29:13+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/gluster-block.git/commit/?id=94c79620db4451bf804d6ab631c9ca59759dbc21'/>
<id>94c79620db4451bf804d6ab631c9ca59759dbc21</id>
<content type='text'>
currently we allocate sparse files for block backends in the gluster
volume, with 'prealloc = full' option introduced by this patch we should
be able to fully preallocate the backend block file.

Change-Id: Ibf32df5f978f732a3fd248693170463da6d08268
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
currently we allocate sparse files for block backends in the gluster
volume, with 'prealloc = full' option introduced by this patch we should
be able to fully preallocate the backend block file.

Change-Id: Ibf32df5f978f732a3fd248693170463da6d08268
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
