aliyun / ossfs

Export s3fs for aliyun oss.
GNU General Public License v2.0
735 stars 152 forks source link

ossfs coredump with signal SIGSEGV with gdb stacktrace #162

Open rockeet opened 8 months ago

rockeet commented 8 months ago

复现条件

多线程高压读写。 mount 命令:gdb --args ossfs -f -ourl=http://oss-cn-shenzhen-internal.aliyuncs.com BucketName MountDir

系统版本

$ uname -a
Linux iZwz92jc9tsm5e2lsktyzmZ 5.10.134-16.al8.x86_64 #1 SMP Thu Nov 16 05:08:49 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux

$ md5sum /lib64/libfuse.so.2
29a2a1f8e046fda1c425c52cfe7155d3  /lib64/libfuse.so.2

gdb stacktrace

Thread 1438 "ossfs" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7ffff4e39640 (LWP 60274)]
check_parent_object_access (path=path@entry=0x0, mask=mask@entry=1) at s3fs.cpp:639
639     s3fs.cpp: No such file or directory.
(gdb) bt
#0  check_parent_object_access (path=path@entry=0x0, mask=mask@entry=1) at s3fs.cpp:639
#1  0x000000000040e09d in s3fs_flush (_path=<optimized out>, fi=0x7ffff4e38b10) at s3fs.cpp:2494
#2  0x00007ffff7f90744 in fuse_flush_common () from /lib64/libfuse.so.2
#3  0x00007ffff7f90af4 in fuse_lib_flush () from /lib64/libfuse.so.2
#4  0x00007ffff7f97936 in do_flush () from /lib64/libfuse.so.2
#5  0x00007ffff7f983f4 in fuse_ll_process_buf () from /lib64/libfuse.so.2
#6  0x00007ffff7f94ffd in fuse_do_work () from /lib64/libfuse.so.2
#7  0x00007ffff7d443fb in start_thread () from /lib64/libpthread.so.0
#8  0x00007ffff752be83 in clone () from /lib64/libc.so.6