Description of problem: ==================== As part of verifying BZ#1453145 - Brick Multiplexing:dmesg shows request_sock_TCP: Possible SYN flooding on port 49152 it was suggested to set the value of transport.listen-backlog to a value of 128 I tried to set it at cluster level, and this led to glusterd crash. The same is seen even with performance.parallel-readdir Although it is a volume level, it leads to crash Version-Release number of selected component (if applicable): ====== 3.8.4-36 How reproducible: =========== always Steps to Reproduce: 1.have a cluster 2. try to set performance.parallel-readdir or ":transport.listen-backlog" at cluster level as below gluster v set all transport.listen-backlog 128 (or) gluster v set all performance.parallel-readdir on Actual results: ============ glusterd crashes Expected results: ============ glusterd must exit and throw an error gracefully, if it is not the way of setting an option core information: Core was generated by `/usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO'. Program terminated with signal 11, Segmentation fault. #0 glusterd_is_tier_daemon_running (volinfo=volinfo@entry=0x0) at glusterd-utils.c:6948 6948 if (volinfo->type != GF_CLUSTER_TYPE_TIER) Missing separate debuginfos, use: debuginfo-install bzip2-libs-1.0.6-13.el7.x86_64 device-mapper-event-libs-1.02.140-8.el7.x86_64 device-mapper-libs-1.02.140-8.el7.x86_64 elfutils-libelf-0.168-8.el7.x86_64 elfutils-libs-0.168-8.el7.x86_64 glibc-2.17-196.el7.x86_64 keyutils-libs-1.5.8-3.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64 libattr-2.4.46-12.el7.x86_64 libblkid-2.23.2-43.el7.x86_64 libcap-2.22-9.el7.x86_64 libcom_err-1.42.9-10.el7.x86_64 libgcc-4.8.5-16.el7.x86_64 libselinux-2.5-11.el7.x86_64 libsepol-2.5-6.el7.x86_64 libuuid-2.23.2-43.el7.x86_64 libxml2-2.9.1-6.el7_2.3.x86_64 lvm2-libs-2.02.171-8.el7.x86_64 openssl-libs-1.0.2k-8.el7.x86_64 pcre-8.32-17.el7.x86_64 systemd-libs-219-42.el7.x86_64 userspace-rcu-0.7.9-2.el7rhgs.x86_64 xz-libs-5.2.2-1.el7.x86_64 zlib-1.2.7-17.el7.x86_64 (gdb) bt #0 glusterd_is_tier_daemon_running (volinfo=volinfo@entry=0x0) at glusterd-utils.c:6948 #1 0x00007effa612eb39 in glusterd_is_defrag_on (volinfo=volinfo@entry=0x0) at glusterd-utils.c:6970 #2 0x00007effa61b1c00 in validate_parallel_readdir (volinfo=0x0, dict=<optimized out>, key=0x7eff8c003630 "performance.parallel-readdir", value=<optimized out>, op_errstr=0x7eff94212d40) at glusterd-volume-set.c:1041 #3 0x00007effa610d943 in glusterd_op_stage_set_volume (dict=dict@entry=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40) at glusterd-op-sm.c:1083 #4 0x00007effa6111e8b in glusterd_op_stage_validate (op=op@entry=GD_OP_SET_VOLUME, dict=dict@entry=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40, rsp_dict=rsp_dict@entry=0x7eff98007b60) at glusterd-op-sm.c:5940 #5 0x00007effa61ae2ca in gd_stage_op_phase (op=<optimized out>, op_ctx=op_ctx@entry=0x7eff8c002f40, req_dict=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40, txn_opinfo=txn_opinfo@entry=0x7eff94212d60) at glusterd-syncop.c:1307 #6 0x00007effa61afdde in gd_sync_task_begin (op_ctx=op_ctx@entry=0x7eff8c002f40, req=req@entry=0x7eff94012620) at glusterd-syncop.c:1935 #7 0x00007effa61b0120 in glusterd_op_begin_synctask (req=req@entry=0x7eff94012620, op=op@entry=GD_OP_SET_VOLUME, dict=0x7eff8c002f40) at glusterd-syncop.c:2008 #8 0x00007effa60f805f in __glusterd_handle_set_volume (req=req@entry=0x7eff94012620) at glusterd-handler.c:2121 #9 0x00007effa60fbf7e in glusterd_big_locked_handler (req=0x7eff94012620, actor_fn=0x7effa60f7a40 <__glusterd_handle_set_volume>) at glusterd-handler.c:81 #10 0x00007effb1689f02 in synctask_wrap (old_task=<optimized out>) at syncop.c:375 #11 0x00007effafccdd40 in ?? () from /lib64/libc.so.6 #12 0x0000000000000000 in ?? () (gdb) t a a bt Thread 8 (Thread 0x7effa845c700 (LWP 11823)): #0 0x00007effb04ba371 in sigwait () from /lib64/libpthread.so.0 #1 0x0000563b8d79101b in glusterfs_sigwaiter (arg=<optimized out>) at glusterfsd.c:2069 #2 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #3 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 7 (Thread 0x7effa2142700 (LWP 12102)): #0 0x00007effb04b6945 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007effa61b138b in hooks_worker (args=<optimized out>) at glusterd-hooks.c:531 #2 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #3 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 6 (Thread 0x7effa1941700 (LWP 12103)): #0 0x00007effafd7f923 in epoll_wait () from /lib64/libc.so.6 #1 0x00007effb16adfd2 in event_dispatch_epoll_worker (data=0x563b8dbec1f0) at event-epoll.c:638 #2 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #3 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 5 (Thread 0x7effb1b2e780 (LWP 11821)): #0 0x00007effb04b3f57 in pthread_join () from /lib64/libpthread.so.0 #1 0x00007effb16ae490 in event_dispatch_epoll (event_pool=0x563b8db7dfd0) at event-epoll.c:732 #2 0x0000563b8d78deb3 in main (argc=5, argv=<optimized out>) at glusterfsd.c:2479 Thread 4 (Thread 0x7effa8c5d700 (LWP 11822)): #0 0x00007effb04b9e4d in nanosleep () from /lib64/libpthread.so.0 #1 0x00007effb1660cfe in gf_timer_proc (data=0x563b8db85840) at timer.c:176 #2 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #3 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 3 (Thread 0x7effa6c59700 (LWP 11826)): #0 0x00007effb04b6cf2 in pthread_cond_timedwait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0 #1 0x00007effb168c438 in syncenv_task (proc=proc@entry=0x563b8db86450) at syncop.c:603 #2 0x00007effb168d280 in syncenv_processor (thdata=0x563b8db86450) at syncop.c:695 #3 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #4 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 2 (Thread 0x7effa7c5b700 (LWP 11824)): #0 0x00007effafd461ad in nanosleep () from /lib64/libc.so.6 #1 0x00007effafd46044 in sleep () from /lib64/libc.so.6 #2 0x00007effb167a1cd in pool_sweeper (arg=<optimized out>) at mem-pool.c:464 #3 0x00007effb04b2e25 in start_thread () from /lib64/libpthread.so.0 #4 0x00007effafd7f34d in clone () from /lib64/libc.so.6 Thread 1 (Thread 0x7effa745a700 (LWP 11825)): #0 glusterd_is_tier_daemon_running (volinfo=volinfo@entry=0x0) at glusterd-utils.c:6948 #1 0x00007effa612eb39 in glusterd_is_defrag_on (volinfo=volinfo@entry=0x0) at glusterd-utils.c:6970 #2 0x00007effa61b1c00 in validate_parallel_readdir (volinfo=0x0, dict=<optimized out>, key=0x7eff8c003630 "performance.parallel-readdir", value=<optimized out>, op_errstr=0x7eff94212d40) at glusterd-volume-set.c:1041 #3 0x00007effa610d943 in glusterd_op_stage_set_volume (dict=dict@entry=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40) at glusterd-op-sm.c:1083 #4 0x00007effa6111e8b in glusterd_op_stage_validate (op=op@entry=GD_OP_SET_VOLUME, dict=dict@entry=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40, rsp_dict=rsp_dict@entry=0x7eff98007b60) at glusterd-op-sm.c:5940 #5 0x00007effa61ae2ca in gd_stage_op_phase (op=<optimized out>, op_ctx=op_ctx@entry=0x7eff8c002f40, req_dict=0x7eff8c002f40, op_errstr=op_errstr@entry=0x7eff94212d40,
upstream patch : https://review.gluster.org/#/c/18052
*** Bug 1509954 has been marked as a duplicate of this bug. ***
BUILD : 3.12.2-4 Followed the steps in the description, glusterd isn't crashing. Hence marking it as verified.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2018:2607