<feed xmlns='http://www.w3.org/2005/Atom'>
<title>gluster-block.git/cli, branch master</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/'/>
<entry>
<title>fix spec file</title>
<updated>2018-03-06T10:12:26+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2018-03-06T09:55:07+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=8b106204f52b283cdbe7a128c14f851dd54a150c'/>
<id>8b106204f52b283cdbe7a128c14f851dd54a150c</id>
<content type='text'>
also other minor compiler errors

Change-Id: I17625008d91740f3ba9efc6e574ec3dcd0b6c85f
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>
also other minor compiler errors

Change-Id: I17625008d91740f3ba9efc6e574ec3dcd0b6c85f
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>delete: support [unlink-storage &lt;yes|no&gt;] option</title>
<updated>2018-02-08T07:41:56+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-11-29T12:14:50+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=7008073e1d00c1af0dc5913cdf5d94372f10088d'/>
<id>7008073e1d00c1af0dc5913cdf5d94372f10088d</id>
<content type='text'>
$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]

  delete  &lt;volname/blockname&gt; [unlink-storage &lt;yes|no&gt;] [force]
        delete block device.
[...]
supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

Change-Id: I64bc99a8519be6f90a7e8bc5558b0d7518661995
Fixes: #19
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>
$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]

  delete  &lt;volname/blockname&gt; [unlink-storage &lt;yes|no&gt;] [force]
        delete block device.
[...]
supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

Change-Id: I64bc99a8519be6f90a7e8bc5558b0d7518661995
Fixes: #19
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>create: support [storage &lt;filename&gt;] option</title>
<updated>2018-02-08T07:41:40+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2018-02-07T16:10:13+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=450f7e89116ed104f092dd1a709c0f057150a4f7'/>
<id>450f7e89116ed104f092dd1a709c0f057150a4f7</id>
<content type='text'>
$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
  create  &lt;volname/blockname&gt; [ha &lt;count&gt;]
                              [auth &lt;enable|disable&gt;]
                              [prealloc &lt;full|no&gt;]
                              [storage &lt;filename&gt;]
                              &lt;host1[,host2,...]&gt; &lt;size&gt;
        create block device [defaults: ha 1, auth disable, prealloc no, size in bytes]
[...]
supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

Fixes: #18
Change-Id: I5d9b4abb58596bd2297cffb294c6d31f752d53e9
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>
$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
  create  &lt;volname/blockname&gt; [ha &lt;count&gt;]
                              [auth &lt;enable|disable&gt;]
                              [prealloc &lt;full|no&gt;]
                              [storage &lt;filename&gt;]
                              &lt;host1[,host2,...]&gt; &lt;size&gt;
        create block device [defaults: ha 1, auth disable, prealloc no, size in bytes]
[...]
supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

Fixes: #18
Change-Id: I5d9b4abb58596bd2297cffb294c6d31f752d53e9
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>replace strcat and strcpy with their secure versions</title>
<updated>2018-02-08T07:00:49+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2018-01-29T11:32:07+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=d7ebb697457fc4b8562bb1475a6832f1badb15f8'/>
<id>d7ebb697457fc4b8562bb1475a6832f1badb15f8</id>
<content type='text'>
Change-Id: If98ce7b7e50901ee130bbe190a12664ec0adb8c2
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: If98ce7b7e50901ee130bbe190a12664ec0adb8c2
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>replace: add replace feature</title>
<updated>2018-02-07T11:19:21+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2018-02-05T09:37:26+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=540e81676b1011dcf85fbe5cd6739a4f2143b2ab'/>
<id>540e81676b1011dcf85fbe5cd6739a4f2143b2ab</id>
<content type='text'>
1. create conf in new node
2. delete conf from old node
3. replace portals from nodes hosting other paths (HA)

$ gluster-block create sample/block ha 3 192.168.124.57,192.168.124.26,192.168.124.30 1GiB --json-pretty
{
  "IQN":"iqn.2016-12.org.gluster-block:d516bb5c-5f56-4d9c-96a7-385df19c2e2c",
  "PORTAL(S)":[
    "192.168.124.57:3260",
    "192.168.124.26:3260",
    "192.168.124.30:3260"
  ],
  "RESULT":"SUCCESS"
}

$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]
  replace &lt;volname/blockname&gt; &lt;old-node&gt; &lt;new-node&gt; [force]
        replace operations.
[...]

supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

$ gluster-block replace sample/block 192.168.124.26 192.168.124.56 --json-pretty
{
  "NAME":"block",
  "CREATE SUCCESS":"192.168.124.56",
  "DELETE SUCCESS":"192.168.124.26",
  "REPLACE PORTAL SUCCESS ON":[
    "192.168.124.57",
    "192.168.124.30"
  ],
  "RESULT":"SUCCESS"
}

Fixes: #4
Change-Id: I0411d15c407111db0d423052d9a6bc075174bf90
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>
1. create conf in new node
2. delete conf from old node
3. replace portals from nodes hosting other paths (HA)

$ gluster-block create sample/block ha 3 192.168.124.57,192.168.124.26,192.168.124.30 1GiB --json-pretty
{
  "IQN":"iqn.2016-12.org.gluster-block:d516bb5c-5f56-4d9c-96a7-385df19c2e2c",
  "PORTAL(S)":[
    "192.168.124.57:3260",
    "192.168.124.26:3260",
    "192.168.124.30:3260"
  ],
  "RESULT":"SUCCESS"
}

$ gluster-block help
gluster-block (0.3)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]
  replace &lt;volname/blockname&gt; &lt;old-node&gt; &lt;new-node&gt; [force]
        replace operations.
[...]

supported JSON formats:
  --json|--json-plain|--json-spaced|--json-pretty

$ gluster-block replace sample/block 192.168.124.26 192.168.124.56 --json-pretty
{
  "NAME":"block",
  "CREATE SUCCESS":"192.168.124.56",
  "DELETE SUCCESS":"192.168.124.26",
  "REPLACE PORTAL SUCCESS ON":[
    "192.168.124.57",
    "192.168.124.30"
  ],
  "RESULT":"SUCCESS"
}

Fixes: #4
Change-Id: I0411d15c407111db0d423052d9a6bc075174bf90
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: make unit prefixes case insensitive</title>
<updated>2017-12-21T07:19:58+00:00</updated>
<author>
<name>Michael Adam</name>
<email>obnox@redhat.com</email>
</author>
<published>2017-12-20T12:29:03+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=f03d6410625c2a606904e8bafb7096181ea9b5a0'/>
<id>f03d6410625c2a606904e8bafb7096181ea9b5a0</id>
<content type='text'>
Change-Id: I28544d08217f15b90c3e439bfd9aa75ba0432d07
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: I28544d08217f15b90c3e439bfd9aa75ba0432d07
Signed-off-by: Michael Adam &lt;obnox@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>cli: defend on minimum block size</title>
<updated>2017-10-09T13:54:57+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-07-11T11:45:36+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=258f30c6d7d6a9aead90ff6bac851dd0f9db8fff'/>
<id>258f30c6d7d6a9aead90ff6bac851dd0f9db8fff</id>
<content type='text'>
From,
$ targetcli /backstores/user:glfs/block get attribute
ATTRIBUTE CONFIG GROUP
======================
hw_block_size=512 [ro]
----------------------

Hence making the min acceptable size to be 1 sector/block i.e. 512 bytes

This patch also, explicitly mention in docs about bytes as default size units.

Change-Id: Iec8797082d02cc9ad51fc17e11f2ba3073aaeda0
Fixes: #35
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>
From,
$ targetcli /backstores/user:glfs/block get attribute
ATTRIBUTE CONFIG GROUP
======================
hw_block_size=512 [ro]
----------------------

Hence making the min acceptable size to be 1 sector/block i.e. 512 bytes

This patch also, explicitly mention in docs about bytes as default size units.

Change-Id: Iec8797082d02cc9ad51fc17e11f2ba3073aaeda0
Fixes: #35
Signed-off-by: Prasanna Kumar Kalever &lt;prasanna.kalever@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://dev.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>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://dev.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>gluster-block: support force delete option</title>
<updated>2017-08-08T10:14:32+00:00</updated>
<author>
<name>Prasanna Kumar Kalever</name>
<email>prasanna.kalever@redhat.com</email>
</author>
<published>2017-08-02T18:12:29+00:00</published>
<link rel='alternate' type='text/html' href='http://dev.gluster.org/cgit/gluster-block.git/commit/?id=d723907c8eaa25f107c7fadd79ca5f9bc6596edf'/>
<id>d723907c8eaa25f107c7fadd79ca5f9bc6596edf</id>
<content type='text'>
$ gluster-block help
gluster-block (0.2.1)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]
  delete  &lt;volname/blockname&gt; [force]
        delete block device.
[...]

Change-Id: I64ac01ec148e2e1d4d0ba0d4c5560df9334d58f5
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>
$ gluster-block help
gluster-block (0.2.1)
usage:
  gluster-block &lt;command&gt; &lt;volname[/blockname]&gt; [&lt;args&gt;] [--json*]

commands:
[...]
  delete  &lt;volname/blockname&gt; [force]
        delete block device.
[...]

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