<feed xmlns='http://www.w3.org/2005/Atom'>
<title>glusterfs.git/rpc, branch release-9</title>
<subtitle>GlusterFS is a distributed file-system capable of scaling to several petabytes. It aggregates various storage bricks over Infiniband RDMA or TCP/IP interconnect into one large parallel network file system.</subtitle>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/'/>
<entry>
<title>glusterd: resource leaks (#1748)</title>
<updated>2020-11-12T08:34:27+00:00</updated>
<author>
<name>Nikhil Ladha</name>
<email>nladha@redhat.com</email>
</author>
<published>2020-11-12T08:34:27+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=b8ad18a260bf1fb34af92bd948df9142e0a08f51'/>
<id>b8ad18a260bf1fb34af92bd948df9142e0a08f51</id>
<content type='text'>
Issue:
iobref was not freed before exiting the function
if all the checks were OK, which caused the resource
leak.

Fix:
Modified the code a bit to avoid use of an extra reference
to the label, and to free the iobref and iobuf if not NULL,
and then exit the function.

CID: 1430118

Updates: #1060</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Issue:
iobref was not freed before exiting the function
if all the checks were OK, which caused the resource
leak.

Fix:
Modified the code a bit to avoid use of an extra reference
to the label, and to free the iobref and iobuf if not NULL,
and then exit the function.

CID: 1430118

Updates: #1060</pre>
</div>
</content>
</entry>
<entry>
<title>rpcsvc/transport: gracefully disconnect when graph is not ready (#1671)</title>
<updated>2020-10-27T07:12:03+00:00</updated>
<author>
<name>Rafi KC</name>
<email>rafi.kavungal@iternity.com</email>
</author>
<published>2020-10-27T07:12:03+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=03d9cd7284403499287643a77fb1700a97cde588'/>
<id>03d9cd7284403499287643a77fb1700a97cde588</id>
<content type='text'>
* rpcsvc/transport: gracefully disconnect when graph is not ready.

There was a crash reported when the brick rpc get's an accept
request from a client before the server xlator is fully inited.

The fix https://review.gluster.org/22339/ solves
the crash, but it leaves the connection alive with out adding
the rpc to xprts list of server conf. This will leads to problems
with upcall, dump, and other cleanup codes.

So this patch will make the rpc to fail and disconnect if a
connection attempted before the server is fully inited.

Change-Id: I3bf1113c0da4c2614afaa2c0f4eb6abfb0d26ed0
Signed-off-by: Mohammed Rafi KC &lt;rafi.kavungal@iternity.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* rpcsvc/transport: gracefully disconnect when graph is not ready.

There was a crash reported when the brick rpc get's an accept
request from a client before the server xlator is fully inited.

The fix https://review.gluster.org/22339/ solves
the crash, but it leaves the connection alive with out adding
the rpc to xprts list of server conf. This will leads to problems
with upcall, dump, and other cleanup codes.

So this patch will make the rpc to fail and disconnect if a
connection attempted before the server is fully inited.

Change-Id: I3bf1113c0da4c2614afaa2c0f4eb6abfb0d26ed0
Signed-off-by: Mohammed Rafi KC &lt;rafi.kavungal@iternity.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: add post-commit phase to the transaction</title>
<updated>2020-07-24T08:41:24+00:00</updated>
<author>
<name>Sanju Rakonde</name>
<email>srakonde@redhat.com</email>
</author>
<published>2020-07-24T08:41:24+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=96d976e6be70d075639e69f2bab70b7de783c520'/>
<id>96d976e6be70d075639e69f2bab70b7de783c520</id>
<content type='text'>
This is part 2 of the fix. part 1 is at
https://review.gluster.org/#/c/glusterfs/+/24325/

This patch adds post commit phase to the mgmt v3 transaction
framework.

In post commit phase we replace the old auth.allow list
in case of add-brick and replace-brick.

fixes: #1391

Change-Id: I41c871d59e6252d27163b042ad710e929d7d0399
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This is part 2 of the fix. part 1 is at
https://review.gluster.org/#/c/glusterfs/+/24325/

This patch adds post commit phase to the mgmt v3 transaction
framework.

In post commit phase we replace the old auth.allow list
in case of add-brick and replace-brick.

fixes: #1391

Change-Id: I41c871d59e6252d27163b042ad710e929d7d0399
Signed-off-by: Sanju Rakonde &lt;srakonde@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rpcsvc: Add latency tracking for rpc programs</title>
<updated>2020-09-04T05:14:17+00:00</updated>
<author>
<name>Pranith Kumar K</name>
<email>pkarampu@redhat.com</email>
</author>
<published>2020-09-04T05:14:17+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=da3835971a5fa1b29fd792faa8339be428a5116c'/>
<id>da3835971a5fa1b29fd792faa8339be428a5116c</id>
<content type='text'>
Added latency tracking of rpc-handling code. With this change we
should be able to monitor the amount of time rpc-handling code is
consuming for each of the rpc call.

fixes: #1466
Change-Id: I04fc7f3b12bfa5053c0fc36885f271cb78f581cd
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Added latency tracking of rpc-handling code. With this change we
should be able to monitor the amount of time rpc-handling code is
consuming for each of the rpc call.

fixes: #1466
Change-Id: I04fc7f3b12bfa5053c0fc36885f271cb78f581cd
Signed-off-by: Pranith Kumar K &lt;pkarampu@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterfsd, libglusterfs, rpc: prefer libglusterfs time API</title>
<updated>2020-09-03T08:11:31+00:00</updated>
<author>
<name>Dmitry Antipov</name>
<email>dmantipov@yandex.ru</email>
</author>
<published>2020-09-03T08:11:31+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=a0b5c8642373508b1428e8d2dee76449042161a6'/>
<id>a0b5c8642373508b1428e8d2dee76449042161a6</id>
<content type='text'>
Use timespec_now_realtime() rather than clock_gettime().

Change-Id: I8fa00b7c0f7b388305c7d19574be3b409db68558
Signed-off-by: Dmitry Antipov &lt;dmantipov@yandex.ru&gt;
Updates: #1002
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Use timespec_now_realtime() rather than clock_gettime().

Change-Id: I8fa00b7c0f7b388305c7d19574be3b409db68558
Signed-off-by: Dmitry Antipov &lt;dmantipov@yandex.ru&gt;
Updates: #1002
</pre>
</div>
</content>
</entry>
<entry>
<title>posix: Implement a janitor thread to close fd</title>
<updated>2020-07-27T12:38:00+00:00</updated>
<author>
<name>Mohit Agrawal</name>
<email>moagrawa@redhat.com</email>
</author>
<published>2020-07-27T12:38:00+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=3c9d5578a623ed1da20e435ddb1283f7b1e7e965'/>
<id>3c9d5578a623ed1da20e435ddb1283f7b1e7e965</id>
<content type='text'>
Problem: In the commit fb20713b380e1df8d7f9e9df96563be2f9144fd6 we use
         syntask to close fd but we have found the patch is reducing the
         performance

Solution: Use janitor thread to close fd's and save the pfd ctx into
          ctx janitor list and also save the posix_xlator into pfd object to
          avoid the race condition during cleanup in brick_mux environment

Change-Id: Ifb3d18a854b267333a3a9e39845bfefb83fbc092
Fixes: #1396
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem: In the commit fb20713b380e1df8d7f9e9df96563be2f9144fd6 we use
         syntask to close fd but we have found the patch is reducing the
         performance

Solution: Use janitor thread to close fd's and save the pfd ctx into
          ctx janitor list and also save the posix_xlator into pfd object to
          avoid the race condition during cleanup in brick_mux environment

Change-Id: Ifb3d18a854b267333a3a9e39845bfefb83fbc092
Fixes: #1396
Signed-off-by: Mohit Agrawal &lt;moagrawa@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>glusterd: dump SSL error stack on disconnect</title>
<updated>2020-08-13T19:37:50+00:00</updated>
<author>
<name>Leonid Ishimnikov</name>
<email>lishim@fastmail.com</email>
</author>
<published>2020-08-13T19:37:50+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=c893e652eff29cc702ee7b352eec1fab28bbb9e0'/>
<id>c893e652eff29cc702ee7b352eec1fab28bbb9e0</id>
<content type='text'>
Problem:  When a non-SSL connection is attempted on an SSL-enabled
          management port, unrelated peers are subsequently disconnected
          from the node with a misleading error message.
Cause:    A non-SSL client causes OpenSSL to push a wrong version error
          into its thread-local error stack, but this error is never
          cleared, and it lingers in the stack until the thread is used
          by another SSL session, and a certain condition requires the error
          stack to be examined, at which time the old error is discovered and
          the connection is terminated.
Solution: Log and clear the error stack upon terminating the connection.

Change-Id: I82f3a723285df24dafc88850ae4fca65b69f6ae4
Fixes: #1418
Signed-off-by: Leonid Ishimnikov &lt;lishim@fastmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Problem:  When a non-SSL connection is attempted on an SSL-enabled
          management port, unrelated peers are subsequently disconnected
          from the node with a misleading error message.
Cause:    A non-SSL client causes OpenSSL to push a wrong version error
          into its thread-local error stack, but this error is never
          cleared, and it lingers in the stack until the thread is used
          by another SSL session, and a certain condition requires the error
          stack to be examined, at which time the old error is discovered and
          the connection is terminated.
Solution: Log and clear the error stack upon terminating the connection.

Change-Id: I82f3a723285df24dafc88850ae4fca65b69f6ae4
Fixes: #1418
Signed-off-by: Leonid Ishimnikov &lt;lishim@fastmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>contrib: remove contrib/sunrpc/xdr_sizeof.c</title>
<updated>2020-07-22T08:03:51+00:00</updated>
<author>
<name>Yaniv Kaul</name>
<email>ykaul@redhat.com</email>
</author>
<published>2020-07-22T08:03:51+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=50c9f7441cafa6f653319352a193e433a5a960fa'/>
<id>50c9f7441cafa6f653319352a193e433a5a960fa</id>
<content type='text'>
It's not needed, and it has a license that Fedora is not very happy with.
Just removed that file.

Change-Id: Ia753f0058c8a7c6482aca40c3b3dc8f6aa4a266d
Fixes: #1383
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
It's not needed, and it has a license that Fedora is not very happy with.
Just removed that file.

Change-Id: Ia753f0058c8a7c6482aca40c3b3dc8f6aa4a266d
Fixes: #1383
Signed-off-by: Yaniv Kaul &lt;ykaul@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>NetBSD build fixes</title>
<updated>2020-06-30T14:42:36+00:00</updated>
<author>
<name>Emmanuel Dreyfus</name>
<email>manu@netbsd.org</email>
</author>
<published>2020-06-30T14:42:36+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=b6a657e8eb764cc0c0b0cec9d9c87234fc8b1fc4'/>
<id>b6a657e8eb764cc0c0b0cec9d9c87234fc8b1fc4</id>
<content type='text'>
- Make sure -largp is used at link time
- PTHREAD_MUTEX_ADAPTIVE_NP is not available, use PTHREAD_MUTEX_DEFAULT instead
- Avoid non POSIX [[ ]] in scripts
- Do not check of lock.spinlock is NULL since it is not a pointer
  (it is not a pointer on Linux either)

Change-Id: I5e04a7c552d24f8a473c2b837828d1bddfa7e128
Fixes: #1347
Type: Bug
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- Make sure -largp is used at link time
- PTHREAD_MUTEX_ADAPTIVE_NP is not available, use PTHREAD_MUTEX_DEFAULT instead
- Avoid non POSIX [[ ]] in scripts
- Do not check of lock.spinlock is NULL since it is not a pointer
  (it is not a pointer on Linux either)

Change-Id: I5e04a7c552d24f8a473c2b837828d1bddfa7e128
Fixes: #1347
Type: Bug
Signed-off-by: Emmanuel Dreyfus &lt;manu@netbsd.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>rpc: fix undefined behaviour in __builtin_ctz</title>
<updated>2020-06-04T13:42:30+00:00</updated>
<author>
<name>Dmitry Antipov</name>
<email>dmantipov@yandex.ru</email>
</author>
<published>2020-06-04T13:42:30+00:00</published>
<link rel='alternate' type='text/html' href='https://fedorapeople.org/cgit/anoopcs/public_git/glusterfs.git/commit/?id=a5aab919f8880d5ff03e395946ca00ec077d2278'/>
<id>a5aab919f8880d5ff03e395946ca00ec077d2278</id>
<content type='text'>
Found with GCC UBsan:

rpcsvc.c:102:36: runtime error: passing zero to ctz(), which is not a valid argument
    #0 0x7fcd1ff6faa4 in rpcsvc_get_free_queue_index /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:102
    #1 0x7fcd1ff81e12 in rpcsvc_handle_rpc_call /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:837
    #2 0x7fcd1ff833ad in rpcsvc_notify /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:1000
    #3 0x7fcd1ff8829d in rpc_transport_notify /path/to/glusterfs/rpc/rpc-lib/src/rpc-transport.c:520
    #4 0x7fcd0dd72f16 in socket_event_poll_in_async /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2502
    #5 0x7fcd0dd8986a in gf_async ../../../../libglusterfs/src/glusterfs/async.h:189
    #6 0x7fcd0dd8986a in socket_event_poll_in /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2543
    #7 0x7fcd0dd8986a in socket_event_handler /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2934
    #8 0x7fcd0dd8986a in socket_event_handler /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2854
    #9 0x7fcd2048aff7 in event_dispatch_epoll_handler /path/to/glusterfs/libglusterfs/src/event-epoll.c:640
    #10 0x7fcd2048aff7 in event_dispatch_epoll_worker /path/to/glusterfs/libglusterfs/src/event-epoll.c:751
    ...

Fix, simplify, and prefer 'unsigned long' as underlying bitmap type.

Change-Id: If3f24dfe7bef8bc7a11a679366e219a73caeb9e4
Signed-off-by: Dmitry Antipov &lt;dmantipov@yandex.ru&gt;
Fixes: #1283
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Found with GCC UBsan:

rpcsvc.c:102:36: runtime error: passing zero to ctz(), which is not a valid argument
    #0 0x7fcd1ff6faa4 in rpcsvc_get_free_queue_index /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:102
    #1 0x7fcd1ff81e12 in rpcsvc_handle_rpc_call /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:837
    #2 0x7fcd1ff833ad in rpcsvc_notify /path/to/glusterfs/rpc/rpc-lib/src/rpcsvc.c:1000
    #3 0x7fcd1ff8829d in rpc_transport_notify /path/to/glusterfs/rpc/rpc-lib/src/rpc-transport.c:520
    #4 0x7fcd0dd72f16 in socket_event_poll_in_async /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2502
    #5 0x7fcd0dd8986a in gf_async ../../../../libglusterfs/src/glusterfs/async.h:189
    #6 0x7fcd0dd8986a in socket_event_poll_in /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2543
    #7 0x7fcd0dd8986a in socket_event_handler /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2934
    #8 0x7fcd0dd8986a in socket_event_handler /path/to/glusterfs/rpc/rpc-transport/socket/src/socket.c:2854
    #9 0x7fcd2048aff7 in event_dispatch_epoll_handler /path/to/glusterfs/libglusterfs/src/event-epoll.c:640
    #10 0x7fcd2048aff7 in event_dispatch_epoll_worker /path/to/glusterfs/libglusterfs/src/event-epoll.c:751
    ...

Fix, simplify, and prefer 'unsigned long' as underlying bitmap type.

Change-Id: If3f24dfe7bef8bc7a11a679366e219a73caeb9e4
Signed-off-by: Dmitry Antipov &lt;dmantipov@yandex.ru&gt;
Fixes: #1283
</pre>
</div>
</content>
</entry>
</feed>
