Bug 1211473

Summary: gluster volume set on debug build crashes when invalid option is provided
Product: [Community] GlusterFS Reporter: Atin Mukherjee <amukherj>
Component: glusterdAssignee: Atin Mukherjee <amukherj>
Status: CLOSED DUPLICATE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: mainlineCC: bugs, gluster-bugs, sasundar
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: GlusterD
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-01-08 09:24:10 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Atin Mukherjee 2015-04-14 05:32:09 UTC
Description of problem:

On debug build, any gluster volume set with an invalid option crashes with the following backtrace:

#0  0x00007f1a8ca280b0 in pthread_spin_lock () from /lib64/libpthread.so.0
#1  0x00007f1a8d900b44 in __gf_free (free_ptr=0x7f1a680293b0) at mem-pool.c:303
#2  0x00007f1a82f508da in gd_sync_task_begin (op_ctx=0x7f1a68000bac, req=0x7f1a740019ac) at glusterd-syncop.c:1767
#3  0x00007f1a82f50970 in glusterd_op_begin_synctask (req=0x7f1a740019ac, op=GD_OP_SET_VOLUME, dict=0x7f1a68000bac)
    at glusterd-syncop.c:1787
#4  0x00007f1a82eb39a4 in __glusterd_handle_set_volume (req=0x7f1a740019ac) at glusterd-handler.c:1871
#5  0x00007f1a82eae740 in glusterd_big_locked_handler (req=0x7f1a740019ac, actor_fn=0x7f1a82eb3488 <__glusterd_handle_set_volume>)
    at glusterd-handler.c:83
#6  0x00007f1a82eb3a8f in glusterd_handle_set_volume (req=0x7f1a740019ac) at glusterd-handler.c:1893
#7  0x00007f1a8d913069 in synctask_wrap (old_task=0x7f1a74002d60) at syncop.c:375
#8  0x00007f1a8c2b9000 in ?? () from /lib64/libc.so.6
#9  0x0000000000000000 in ?? ()


Version-Release number of selected component (if applicable):
Mainline

How reproducible:
Always

Steps to Reproduce:
1. Create & start any type of volume
2. gluster volume set <VOLNAME> barrier abcd


Actual results:
Glusterd crashed

Expected results:
Glusterd should not crash

Additional info:

Comment 1 Anand Avati 2015-04-14 05:38:00 UTC
REVIEW: http://review.gluster.org/10227 (glusterd: handle op_errstr freeing correctly) posted (#1) for review on master by Atin Mukherjee (amukherj)

Comment 2 Atin Mukherjee 2015-04-15 17:09:53 UTC
This problem should get addressed by http://review.gluster.org/#/c/10238/ as this is a generic patch to cover all occurrences of gf_free () execution with different xl's mem_header.

http://review.gluster.org/10227 was addressing one particular problem here, so decided to abandon it.

Comment 3 Atin Mukherjee 2015-08-12 05:08:35 UTC
http://review.gluster.org/#/c/10417/ has fixed it.

Comment 4 Atin Mukherjee 2016-01-08 09:24:10 UTC

*** This bug has been marked as a duplicate of bug 1211749 ***