<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/rpc, branch v3.6.9</title>
<subtitle></subtitle>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/'/>
<entry>
<title>rpc-transport: socket_poller fixes for proper working of mgmt encryption</title>
<updated>2015-07-17T07:18:41+00:00</updated>
<author>
<name>Kaushal M</name>
<email>kaushal@redhat.com</email>
</author>
<published>2015-07-13T10:46:00+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=6263e73688ba2be49fd55f4c6a2d12609ce45f91'/>
<id>6263e73688ba2be49fd55f4c6a2d12609ce45f91</id>
<content type='text'>
  Backport of 8c39f14 from master

socket_poller, the polling function used by ssl own_thread, had two
issues which lead to GlusterD crashes when using management encryption

Issue 1
-------
socket_poller calls functions which require THIS to be set. But, THIS
was being set conditionally. Because of this, functions could sometimes
be called without THIS being set. For example, rpc_transport_notify
could be called for an accepted client socket without THIS being set, as
THIS was only set it the transport wasn't yet connected. This would
cause the process to crash when THIS was accessed by the called
functions.

To fix this, THIS is being set at the start of socket_poller
unconditionally.

Issue 2
-------
DISCONNECT notify was being sent on the listener transport instead of
the client transport. The DISCONNECT event was converted to a
LISTENER_DEAD event in rpcsvc_handle_disconnect, as it could not find
the listener socket of the listener socket. GlusterD was notified of a
LISTENER_DEAD event instead of a DISCONNECT and failed to remove the
client transport from its xprt_list. The transport would subsequently
be freed, leaving the xprt_list with a corrupted/invalid entry. Later,
when GlusterD would iterate over the xprt_list to send notifications, it
would crash when the invalid entry was accessed.

To fix this, DISCONNECT notification in socket_poller is sent on the
client socket, as it is done in the epoll handler.

Change-Id: I0370b7c6d7eb13de10ebf08d91a4a39dc7d64c7a
BUG: 1243700
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11690
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
  Backport of 8c39f14 from master

socket_poller, the polling function used by ssl own_thread, had two
issues which lead to GlusterD crashes when using management encryption

Issue 1
-------
socket_poller calls functions which require THIS to be set. But, THIS
was being set conditionally. Because of this, functions could sometimes
be called without THIS being set. For example, rpc_transport_notify
could be called for an accepted client socket without THIS being set, as
THIS was only set it the transport wasn't yet connected. This would
cause the process to crash when THIS was accessed by the called
functions.

To fix this, THIS is being set at the start of socket_poller
unconditionally.

Issue 2
-------
DISCONNECT notify was being sent on the listener transport instead of
the client transport. The DISCONNECT event was converted to a
LISTENER_DEAD event in rpcsvc_handle_disconnect, as it could not find
the listener socket of the listener socket. GlusterD was notified of a
LISTENER_DEAD event instead of a DISCONNECT and failed to remove the
client transport from its xprt_list. The transport would subsequently
be freed, leaving the xprt_list with a corrupted/invalid entry. Later,
when GlusterD would iterate over the xprt_list to send notifications, it
would crash when the invalid entry was accessed.

To fix this, DISCONNECT notification in socket_poller is sent on the
client socket, as it is done in the epoll handler.

Change-Id: I0370b7c6d7eb13de10ebf08d91a4a39dc7d64c7a
BUG: 1243700
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.org/11690
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>socket: fix multithreading-related build problems on RHEL5</title>
<updated>2015-05-27T11:39:34+00:00</updated>
<author>
<name>Jeff Darcy</name>
<email>jdarcy@redhat.com</email>
</author>
<published>2015-05-26T15:08:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=1661ac3cfabdbdc39c18adb18e55ac6b85e3d05d'/>
<id>1661ac3cfabdbdc39c18adb18e55ac6b85e3d05d</id>
<content type='text'>
Change-Id: I3e145137c3ef738c4459c8d3098d6094ccfb008a
BUG: 1225072
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10921
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Change-Id: I3e145137c3ef738c4459c8d3098d6094ccfb008a
BUG: 1225072
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10921
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>socket: use OpenSSL multi-threading interfaces</title>
<updated>2015-05-19T13:04:44+00:00</updated>
<author>
<name>Jeff Darcy</name>
<email>jdarcy@redhat.com</email>
</author>
<published>2015-03-31T18:34:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=94fdc9ac821238fc5452613436a10e4928decc77'/>
<id>94fdc9ac821238fc5452613436a10e4928decc77</id>
<content type='text'>
OpenSSL isn't thread-safe unless you register these locking and thread
ID functions.  Most often the crashes would occur around
X509_verify_cert, even though it's insane that the certificate parsing
functions wouldn't be thread-safe.  The bug for this was filed over
two years ago, but it didn't seem like a high priority because the bug
didn't bite anyone until it caused a spurious regression-test failure.
Ironically, that was on a test for a *different* spurious
regression-test failure, which I guess is just deserts for leaving
this on the to-do list so long.

This is a backport of 8830e90fa1b131057e4ee1742cb83d78102714c0
&gt;   Change-Id: I2a6c0e9b361abf54efa10ffbbbe071404f82b0d9
&gt;   BUG: 906763
&gt;   Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
&gt;   Reviewed-on: http://review.gluster.org/10075
&gt;   Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;   Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
&gt;   Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;

Change-Id: I66de5f2830936ccc8d447fed6d1a83ebe7e93460
BUG: 1218167
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10591
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
OpenSSL isn't thread-safe unless you register these locking and thread
ID functions.  Most often the crashes would occur around
X509_verify_cert, even though it's insane that the certificate parsing
functions wouldn't be thread-safe.  The bug for this was filed over
two years ago, but it didn't seem like a high priority because the bug
didn't bite anyone until it caused a spurious regression-test failure.
Ironically, that was on a test for a *different* spurious
regression-test failure, which I guess is just deserts for leaving
this on the to-do list so long.

This is a backport of 8830e90fa1b131057e4ee1742cb83d78102714c0
&gt;   Change-Id: I2a6c0e9b361abf54efa10ffbbbe071404f82b0d9
&gt;   BUG: 906763
&gt;   Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
&gt;   Reviewed-on: http://review.gluster.org/10075
&gt;   Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
&gt;   Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
&gt;   Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;

Change-Id: I66de5f2830936ccc8d447fed6d1a83ebe7e93460
BUG: 1218167
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10591
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>socket: fix segfaults when TLS management connections fail</title>
<updated>2015-04-21T12:27:14+00:00</updated>
<author>
<name>Jeff Darcy</name>
<email>jdarcy@redhat.com</email>
</author>
<published>2014-11-06T03:37:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=415f575279d30feccb7436b85121a3a5489fdcf7'/>
<id>415f575279d30feccb7436b85121a3a5489fdcf7</id>
<content type='text'>
Backport of 0b9a6a6 from master.

BUG: 1212684
Change-Id: Iec5410b937af150621b757924836cec638b5eb55
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10280
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Backport of 0b9a6a6 from master.

BUG: 1212684
Change-Id: Iec5410b937af150621b757924836cec638b5eb55
Signed-off-by: Jeff Darcy &lt;jdarcy@redhat.com&gt;
Signed-off-by: Kaushal M &lt;kaushal@redhat.com&gt;
Reviewed-on: http://review.gluster.org/10280
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma:smoke failure in NetBSD if RDMA_OPTION_ID_REUSEADDR is not defined</title>
<updated>2015-04-16T06:39:23+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2015-04-13T06:25:42+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=c79d2b6836dc1c7223b90a9bb0af7940963ff0a5'/>
<id>c79d2b6836dc1c7223b90a9bb0af7940963ff0a5</id>
<content type='text'>
By the change http://review.gluster.org/#/c/10014/, we only set
reuseaddr option if the macro RDMA_OPTION_ID_REUSEADDR is defined in
rdmacma.h . The variable optval is only used in the section where we
use conditional compiling based on the macro. So if the macro is not
defined, then compiler will throw a warning for optval.

Change-Id: I162143c928e84b40c6fd6108d3aa5b045dd9de95
BUG: 1201484
Reviewed-on: http://review.gluster.org/10208
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
Reviewed-by: Sachin Pandit &lt;spandit@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Tested-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
By the change http://review.gluster.org/#/c/10014/, we only set
reuseaddr option if the macro RDMA_OPTION_ID_REUSEADDR is defined in
rdmacma.h . The variable optval is only used in the section where we
use conditional compiling based on the macro. So if the macro is not
defined, then compiler will throw a warning for optval.

Change-Id: I162143c928e84b40c6fd6108d3aa5b045dd9de95
BUG: 1201484
Reviewed-on: http://review.gluster.org/10208
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
Reviewed-by: Sachin Pandit &lt;spandit@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
Tested-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma: RDMA_OPTION_ID_REUSEADDR undeclared on Ubuntu Precise (LTS)</title>
<updated>2015-03-27T11:37:15+00:00</updated>
<author>
<name>kkeithle</name>
<email>kkeithle@precise.kkeithle.usersys.redhat.com</email>
</author>
<published>2015-03-26T15:55:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=ae75db655b683bb47df1590c7815c90b7cbefe4b'/>
<id>ae75db655b683bb47df1590c7815c90b7cbefe4b</id>
<content type='text'>
Very old release of Ubuntu LTSwq

Change-Id: Ib6fb4493f1f34ba853bd74c8037da7663639f40e
BUG: 1201484
Signed-off-by: kkeithle &lt;kkeithle@precise.kkeithle.usersys.redhat.com&gt;
Reviewed-on: http://review.gluster.org/10014
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Very old release of Ubuntu LTSwq

Change-Id: Ib6fb4493f1f34ba853bd74c8037da7663639f40e
BUG: 1201484
Signed-off-by: kkeithle &lt;kkeithle@precise.kkeithle.usersys.redhat.com&gt;
Reviewed-on: http://review.gluster.org/10014
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Niels de Vos &lt;ndevos@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma:changing list iteration to safe mode</title>
<updated>2015-03-27T11:35:31+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2015-03-13T06:07:14+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=d5b6c5265524efe8f927066f342b89f12a531079'/>
<id>d5b6c5265524efe8f927066f342b89f12a531079</id>
<content type='text'>
        Bck port of : http://review.gluster.org/9872

Change-Id: I2299378f02a5577a8bf2874664ba79e92c3811b5
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9872
Reviewed-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9891
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Bck port of : http://review.gluster.org/9872

Change-Id: I2299378f02a5577a8bf2874664ba79e92c3811b5
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9872
Reviewed-by: Krishnan Parthasarathi &lt;kparthas@redhat.com&gt;
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra Talur &lt;rtalur@redhat.com&gt;
Reviewed-by: Vijay Bellur &lt;vbellur@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9891
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma:setting wrong remote memory.</title>
<updated>2015-03-27T11:34:39+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2015-03-04T09:07:05+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=7095d05ae3e06c2ea0f01b18cb117a817316fb9e'/>
<id>7095d05ae3e06c2ea0f01b18cb117a817316fb9e</id>
<content type='text'>
        Back port of : http://review.gluster.org/9794

when we send more than one work request in a single call,
the remote addr is always setting as the first address of
the vector.

Change-Id: I55aea7bd6542abe22916719a139f7c8f73334d26
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9794
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9890
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Back port of : http://review.gluster.org/9794

when we send more than one work request in a single call,
the remote addr is always setting as the first address of
the vector.

Change-Id: I55aea7bd6542abe22916719a139f7c8f73334d26
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9794
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9890
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma: pre-register iobuf_pool with rdma devices.</title>
<updated>2015-03-27T11:34:08+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2015-02-17T14:47:58+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=7febb66a26f01c94f8e76bb90cf4edd7c6cc1421'/>
<id>7febb66a26f01c94f8e76bb90cf4edd7c6cc1421</id>
<content type='text'>
        Back port pf : http://review.gluster.org/9506

registring buffers with rdma device is a time consuming
operation. So performing registration in code path will
decrease the performance.
Using a pre registered memory will give a bettor performance,
ie, register iobuf_pool during rdma initialization. For
dynamically created arena, we can register with all the
device.

Change-Id: Ic79183e2efd014c43faf5911fdb6d5cfbcee64ca
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9506
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9889
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Back port pf : http://review.gluster.org/9506

registring buffers with rdma device is a time consuming
operation. So performing registration in code path will
decrease the performance.
Using a pre registered memory will give a bettor performance,
ie, register iobuf_pool during rdma initialization. For
dynamically created arena, we can register with all the
device.

Change-Id: Ic79183e2efd014c43faf5911fdb6d5cfbcee64ca
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9506
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9889
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rdma:read multiple wr from cq and ack them in one call</title>
<updated>2015-03-27T11:33:47+00:00</updated>
<author>
<name>Mohammed Rafi KC</name>
<email>rkavunga@redhat.com</email>
</author>
<published>2014-12-23T06:01:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.gluster.org/cgit/glusterfs.git/commit/?id=d21990e093d99d8adbacae1ba2c56ff7606e2c37'/>
<id>d21990e093d99d8adbacae1ba2c56ff7606e2c37</id>
<content type='text'>
        Back port of : http://review.gluster.org/9329

we are reading one work completion request at a time
from cq, though we can read multiple work completion
requests from cq. Also we can acknowledge them in
one call itself. Both will give a better performance
because of less mutual exclusion locks are being performed.

Change-Id: Ib5664cab25c87db7f575d482eee4dcd2b5005c04
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9329
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9888
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
        Back port of : http://review.gluster.org/9329

we are reading one work completion request at a time
from cq, though we can read multiple work completion
requests from cq. Also we can acknowledge them in
one call itself. Both will give a better performance
because of less mutual exclusion locks are being performed.

Change-Id: Ib5664cab25c87db7f575d482eee4dcd2b5005c04
BUG: 1202212
Signed-off-by: Mohammed Rafi KC &lt;rkavunga@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9329
Reviewed-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Tested-by: Raghavendra G &lt;rgowdapp@redhat.com&gt;
Reviewed-on: http://review.gluster.org/9888
Tested-by: Gluster Build System &lt;jenkins@build.gluster.com&gt;
Reviewed-by: Kaleb KEITHLEY &lt;kkeithle@redhat.com&gt;
Reviewed-by: Raghavendra Bhat &lt;raghavendra@redhat.com&gt;
</pre>
</div>
</content>
</entry>
</feed>
