[Bugs] [Bug 1746320] New: SHORT-WRITE error leads to crash
bugzilla at redhat.com
bugzilla at redhat.com
Wed Aug 28 07:32:00 UTC 2019
https://bugzilla.redhat.com/show_bug.cgi?id=1746320
Bug ID: 1746320
Summary: SHORT-WRITE error leads to crash
Product: GlusterFS
Version: mainline
Status: NEW
Component: error-gen
Assignee: bugs at gluster.org
Reporter: pkarampu at redhat.com
CC: bugs at gluster.org
Target Milestone: ---
Classification: Community
Description of problem:
In error-gen xlator when we use short-write error, it leads to crash.
Version-Release number of selected component (if applicable):
How reproducible:
Steps to Reproduce:
1. Edit fuse volume file to include error-gen xlator between write-behind and
dht
2. Make the following changes to mount volfile.
...
volume patchy-utime
type features/utime
option noatime on
subvolumes patchy-dht
end-volume
volume patchy-error-gen
type debug/error-gen
option failure 50
option enable WRITE
subvolumes patchy-utime
end-volume
volume patchy-write-behind
type performance/write-behind
subvolumes patchy-error-gen
end-volume
...
3. Mount the volume and run the following command:
for i in {1..10}; do dd if=/dev/null of=$i bs=1M count=10 conv=fsync; done
Thread 9 "glfs_iotwr000" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7f3c44cbd700 (LWP 32368)]
0x00007f3c5722ef83 in __memmove_avx_unaligned_erms () from /lib64/libc.so.6
(gdb) bt
#0 0x00007f3c5722ef83 in __memmove_avx_unaligned_erms () from /lib64/libc.so.6
#1 0x00007f3c457f4754 in ec_iov_copy_to (dst=0x7f3c569c0000,
vector=0x7f3c3c002720, count=2,
offset=0, size=117) at ec-helpers.c:118
#2 0x00007f3c458265e6 in ec_writev_prepare_buffers (ec=0x7f3c400663d0,
fop=0x7f3c3000d930)
at ec-inode-write.c:1849
#3 0x00007f3c45826ce0 in ec_writev_start (fop=0x7f3c3000d930) at
ec-inode-write.c:2027
#4 0x00007f3c45827985 in ec_manager_writev (fop=0x7f3c3000d930, state=3)
at ec-inode-write.c:2176
#5 0x00007f3c457fd311 in __ec_manager (fop=0x7f3c3000d930, error=0) at
ec-common.c:2945
#6 0x00007f3c457fd41d in ec_manager (fop=0x7f3c3000d930, error=0) at
ec-common.c:2963
#7 0x00007f3c458282d0 in ec_writev (frame=0x7f3c3001d830, this=0x7f3c4001c4a0,
target=18446744073709551615, fop_flags=128, func=0x7f3c578c869e
<default_writev_cbk>,
data=0x0, fd=0x7f3c3c004340, vector=0x7f3c3c006510, count=2,
offset=1703936, flags=32769,
iobref=0x7f3c3c00b420, xdata=0x0) at ec-inode-write.c:2368
#8 0x00007f3c457f1d35 in ec_gf_writev (frame=0x7f3c3001d830,
this=0x7f3c4001c4a0,
fd=0x7f3c3c004340, vector=0x7f3c3c006510, count=2, offset=1703936,
flags=32769,
iobref=0x7f3c3c00b420, xdata=0x0) at ec.c:1341
#9 0x00007f3c578e02f1 in default_writev (frame=0x7f3c3001d830,
this=0x7f3c4001e6c0,
fd=0x7f3c3c004340, vector=0x7f3c3c006510, count=2, off=1703936,
flags=32769,
iobref=0x7f3c3c00b420, xdata=0x0) at defaults.c:2550
#10 0x00007f3c469e7400 in gf_utime_writev (frame=0x7f3c300088e0,
this=0x7f3c40020690,
fd=0x7f3c3c004340, vector=0x7f3c3c006510, count=2, off=1703936,
flags=32769,
iobref=0x7f3c3c00b420, xdata=0x0) at utime-autogen-fops.c:81
--Type <RET> for more, q to quit, c to continue without paging--
#11 0x00007f3c456e117d in error_gen_writev (frame=0x7f3c300088e0,
this=0x7f3c400223d0,
fd=0x7f3c3c004340, vector=0x7f3c44cbb760, count=2, off=1703936,
flags=32769,
iobref=0x7f3c3c00b420, xdata=0x0) at error-gen.c:771
#12 0x00007f3c456c1e3a in wb_fulfill_head (wb_inode=0x7f3c30002ce0,
head=0x7f3c3000be40)
at write-behind.c:1159
#13 0x00007f3c456c208d in wb_fulfill (wb_inode=0x7f3c30002ce0,
liabilities=0x7f3c44cbb8b0)
at write-behind.c:1216
#14 0x00007f3c456c3ba9 in wb_process_queue (wb_inode=0x7f3c30002ce0) at
write-behind.c:1784
#15 0x00007f3c456c4675 in wb_writev (frame=0x7f3c3000fd90, this=0x7f3c40024320,
fd=0x7f3c3c004340, vector=0x7f3c3c006580, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at write-behind.c:1893
#16 0x00007f3c456ac01f in ra_writev (frame=0x7f3c300041f0, this=0x7f3c40025fd0,
fd=0x7f3c3c004340, vector=0x7f3c3c006580, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at read-ahead.c:650
#17 0x00007f3c45697161 in rda_writev (frame=0x7f3c30011c60,
this=0x7f3c40027ba0,
fd=0x7f3c3c004340, vector=0x7f3c3c006580, count=1, off=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at readdir-ahead.c:786
#18 0x00007f3c4567dcbb in ioc_writev (frame=0x7f3c3000b130,
this=0x7f3c40029c70,
fd=0x7f3c3c004340, vector=0x7f3c3c006580, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at io-cache.c:1305
#19 0x00007f3c578d4798 in default_writev_resume (frame=0x7f3c3001d830,
this=0x7f3c4002b850,
fd=0x7f3c3c004340, vector=0x7f3c3c006580, count=1, off=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at defaults.c:1831
--Type <RET> for more, q to quit, c to continue without paging--
#20 0x00007f3c5782533b in call_resume_wind (stub=0x7f3c3001b6f0) at
call-stub.c:2085
#21 0x00007f3c5783710c in call_resume (stub=0x7f3c3001b6f0) at call-stub.c:2555
#22 0x00007f3c45665362 in open_and_resume (this=0x7f3c4002b850,
fd=0x7f3c3c004340,
stub=0x7f3c3001b6f0) at open-behind.c:480
#23 0x00007f3c45666a5c in ob_writev (frame=0x7f3c3001d830, this=0x7f3c4002b850,
fd=0x7f3c3c004340, iov=0x7f3c3c001e30, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at open-behind.c:678
#24 0x00007f3c4565545d in qr_writev (frame=0x7f3c300088e0, this=0x7f3c4002d440,
fd=0x7f3c3c004340, iov=0x7f3c3c001e30, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at quick-read.c:849
#25 0x00007f3c4563601e in mdc_writev (frame=0x7f3c300066d0,
this=0x7f3c4002f010,
fd=0x7f3c3c004340, vector=0x7f3c3c001e30, count=1, offset=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at md-cache.c:2082
#26 0x00007f3c578d4798 in default_writev_resume (frame=0x7f3c3c006df0,
this=0x7f3c40030c00,
fd=0x7f3c3c004340, vector=0x7f3c3c001e30, count=1, off=1966080,
flags=32769,
iobref=0x7f3c3c0068d0, xdata=0x0) at defaults.c:1831
#27 0x00007f3c5782533b in call_resume_wind (stub=0x7f3c3c009950) at
call-stub.c:2085
#28 0x00007f3c5783710c in call_resume (stub=0x7f3c3c009950) at call-stub.c:2555
#29 0x00007f3c4561b372 in iot_worker (data=0x7f3c40040a30) at io-threads.c:232
#30 0x00007f3c5757e5a2 in start_thread () from /lib64/libpthread.so.0
#31 0x00007f3c571cb023 in clone () from /lib64/libc.so.6
(gdb) fr 11
#11 0x00007f3c456e117d in error_gen_writev (frame=0x7f3c300088e0,
this=0x7f3c400223d0, fd=0x7f3c3c004340, vector=0x7f3c44cbb760, count=2,
off=1703936, flags=32769, iobref=0x7f3c3c00b420,
xdata=0x0) at error-gen.c:771
771 STACK_WIND_TAIL(frame, FIRST_CHILD(this),
FIRST_CHILD(this)->fops->writev,
(gdb) p count
$1 = 2
Actual results:
Expected results:
Additional info:
--
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