[Bugs] [Bug 1497122] New: Crash in dht_check_and_open_fd_on_subvol_task()

bugzilla at redhat.com bugzilla at redhat.com
Fri Sep 29 09:00:04 UTC 2017


https://bugzilla.redhat.com/show_bug.cgi?id=1497122

            Bug ID: 1497122
           Summary: Crash in dht_check_and_open_fd_on_subvol_task()
           Product: GlusterFS
           Version: 3.10
         Component: distribute
          Keywords: Triaged
          Assignee: bugs at gluster.org
          Reporter: ravishankar at redhat.com
                CC: bugs at gluster.org
        Depends On: 1488399
            Blocks: 1489260



+++ This bug was initially created as a clone of Bug #1488399 +++

Description of problem:
tests/bugs/trace/bug-797171.t crashed at
https://build.gluster.org/job/centos6-regression/6244/console

=========================
#gdb -ex 'set sysroot ./' -ex 'core-file
./build/install/cores/glustersproc0-29050.core' ./build/install/sbin/glusterfsd

Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007fd325886436 in dht_check_and_open_fd_on_subvol_task
(data=0x7fd3180015d0) at
/home/jenkins/root/workspace/centos6-regression/xlators/cluster/dht/src/dht-helper.c:512
512             gf_msg_debug (this->name, 0,
[Current thread is 1 (LWP 29056)]
(gdb) l
507             if (fd_is_anonymous (fd) || dht_fd_open_on_dst (this, fd,
subvol)) {
508                     ret = 0;
509                     goto out;
510             }
511
512             gf_msg_debug (this->name, 0,
513                           "Opening fd (%p, flags=0%o) on file %s @ %s",
514                           fd, fd->flags, uuid_utoa (fd->inode->gfid),
515                           subvol->name);
516
(gdb) p fd
$1 = (fd_t *) 0x0
(gdb) p local->fd
$2 = (fd_t *) 0x0
(gdb) p local->fop
$3 = GF_FOP_SETATTR
(gdb) p local->op_ret
$4 = -1
(gdb) p local->op_errno
$5 = 9
========================
local->fd was NULL. ernno was EBADF.

Error-gen xlator on the brick had sent EBADF for setattr FOP which is non fd
based:

[2017-09-04 19:23:50.215311] E [error-gen.c:355:error_gen_setattr]
0-patchy-error-gen: unwind(-1, Bad file descriptor)

--- Additional comment from Worker Ant on 2017-09-05 05:57:12 EDT ---

REVIEW: https://review.gluster.org/18208 (dht: add FOP check to
dht_file_setattr_cbk) posted (#1) for review on master by Ravishankar N
(ravishankar at redhat.com)

--- Additional comment from Worker Ant on 2017-09-06 22:17:08 EDT ---

COMMIT: https://review.gluster.org/18208 committed in master by Raghavendra G
(rgowdapp at redhat.com) 
------
commit 47188e9eac59de416a5c86c7ec7540ed6aaa1c98
Author: Ravishankar N <ravishankar at redhat.com>
Date:   Tue Sep 5 15:18:58 2017 +0530

    dht: add FOP check to dht_file_setattr_cbk

    Problem:
    bug-797171.7 loaded error-gen xlator on the brick which sent EBADF for a
    non fd-based fop, namely setattr. This caused
    dht_check_and_open_fd_on_subvol_task() to crash as local->fd was NULL.

    Fix:
    Call dht_check_and_open_fd_on_subvol_task() from dht_file_setattr_cbk
    only for dht_fsetattr and not dht_setattr or dht_setattr2

    Signed-off-by: Ravishankar N <ravishankar at redhat.com>
    Change-Id: Iab4999e213bf2065804f3f8237e470ad454e3c99
    BUG: 1488399
    Reviewed-on: https://review.gluster.org/18208
    Smoke: Gluster Build System <jenkins at build.gluster.org>
    Reviewed-by: Susant Palai <spalai at redhat.com>
    Reviewed-by: Amar Tumballi <amarts at redhat.com>
    Reviewed-by: Raghavendra G <rgowdapp at redhat.com>
    Reviewed-by: N Balachandran <nbalacha at redhat.com>
    CentOS-regression: Gluster Build System <jenkins at build.gluster.org>


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1488399
[Bug 1488399] Crash in dht_check_and_open_fd_on_subvol_task()
https://bugzilla.redhat.com/show_bug.cgi?id=1489260
[Bug 1489260] Crash in dht_check_and_open_fd_on_subvol_task()
-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list