Samba crash and core dump when deleting files

I have a small home server that I run samba on to share out files for the family. It’s currently running Fedora 39 Server with Cockpit as my main management interface. Samaba is setup and working just fine for connection from Windows/Mac and mobile devices.

My issue is that anytime I try to delete a file on a samba share it fails. When I look in the logs I can see errors and core dumps from the smbd service. Create/Copy/Move of files all works fine.

Any idea what would be causing this and how to fix it?

[2023/11/30 14:01:10.651850,  0] ../../source3/smbd/server.c:1746(main)
  smbd version 4.19.2 started.
  Copyright Andrew Tridgell and the Samba Team 1992-2023
[2023/11/30 14:01:32.912615,  0] ../../source3/smbd/fd_handle.c:39(fd_handle_destructor)
  PANIC: assert failed at ../../source3/smbd/fd_handle.c(39): (fh->fd == -1) || (fh->fd == AT_FDCWD)
[2023/11/30 14:01:32.912771,  0] ../../lib/util/fault.c:178(smb_panic_log)
  ===============================================================
[2023/11/30 14:01:32.912796,  0] ../../lib/util/fault.c:179(smb_panic_log)
  INTERNAL ERROR: assert failed: (fh->fd == -1) || (fh->fd == AT_FDCWD) in smbd (smbd[192.168.4.) (client [192.168.4.26]) pid 561378 (4.19.2)
[2023/11/30 14:01:32.912822,  0] ../../lib/util/fault.c:186(smb_panic_log)
  If you are running a recent Samba version, and if you think this problem is not yet fixed in the latest versions, please consider reporting this bug, see https://wiki.samba.org/index.php/Bug_Reporting
[2023/11/30 14:01:32.912846,  0] ../../lib/util/fault.c:191(smb_panic_log)
  ===============================================================
[2023/11/30 14:01:32.912868,  0] ../../lib/util/fault.c:192(smb_panic_log)
  PANIC (pid 561378): assert failed: (fh->fd == -1) || (fh->fd == AT_FDCWD) in 4.19.2
[2023/11/30 14:01:32.913321,  0] ../../lib/util/fault.c:303(log_stack_trace)
  BACKTRACE: 27 stack frames:
   #0 /usr/lib64/samba/libgenrand-samba4.so(log_stack_trace+0x37) [0x7f9f25da7ed7]
   #1 /usr/lib64/samba/libgenrand-samba4.so(smb_panic+0x15) [0x7f9f25da86e5]
   #2 /usr/lib64/samba/libsmbd-base-samba4.so(+0xd10e3) [0x7f9f2679b0e3]
   #3 /lib64/libtalloc.so.2(+0x4810) [0x7f9f2502d810]
   #4 /usr/lib64/samba/libsmbd-base-samba4.so(file_free+0xe1) [0x7f9f267b12c1]
   #5 /usr/lib64/samba/libsmbd-base-samba4.so(+0x14a0e6) [0x7f9f268140e6]
   #6 /usr/lib64/samba/libsmbd-base-samba4.so(smbd_smb2_request_process_close+0x259) [0x7f9f26814409]
   #7 /usr/lib64/samba/libsmbd-base-samba4.so(smbd_smb2_request_dispatch+0x1b8f) [0x7f9f2680a93f]
   #8 /usr/lib64/samba/libsmbd-base-samba4.so(+0x142249) [0x7f9f2680c249]
   #9 /lib64/libtevent.so.0(tevent_common_invoke_fd_handler+0x98) [0x7f9f22d8fc08]
   #10 /lib64/libtevent.so.0(+0xfc47) [0x7f9f22d93c47]
   #11 /lib64/libtevent.so.0(+0x7894) [0x7f9f22d8b894]
   #12 /lib64/libtevent.so.0(_tevent_loop_once+0x9b) [0x7f9f22d8de1b]
   #13 /lib64/libtevent.so.0(tevent_common_loop_wait+0x2b) [0x7f9f22d8df6b]
   #14 /lib64/libtevent.so.0(+0x7914) [0x7f9f22d8b914]
   #15 /usr/lib64/samba/libsmbd-base-samba4.so(smbd_process+0x90c) [0x7f9f267f780c]
   #16 /usr/sbin/smbd(+0xc2e6) [0x557d225642e6]
   #17 /lib64/libtevent.so.0(tevent_common_invoke_fd_handler+0x98) [0x7f9f22d8fc08]
   #18 /lib64/libtevent.so.0(+0xfc47) [0x7f9f22d93c47]
   #19 /lib64/libtevent.so.0(+0x7894) [0x7f9f22d8b894]
   #20 /lib64/libtevent.so.0(_tevent_loop_once+0x9b) [0x7f9f22d8de1b]
   #21 /lib64/libtevent.so.0(tevent_common_loop_wait+0x2b) [0x7f9f22d8df6b]
   #22 /lib64/libtevent.so.0(+0x7914) [0x7f9f22d8b914]
   #23 /usr/sbin/smbd(main+0x144f) [0x557d22566eff]
   #24 /lib64/libc.so.6(+0x2814a) [0x7f9f2284614a]
   #25 /lib64/libc.so.6(__libc_start_main+0x8b) [0x7f9f2284620b]
   #26 /usr/sbin/smbd(_start+0x25) [0x557d22562785]
[2023/11/30 14:01:32.913598,  0] ../../source3/lib/dumpcore.c:317(dump_core)
  coredump is handled by helper binary specified at /proc/sys/kernel/core_pattern

Interestingly, it seems to work fine from Windows and Mac… Issue only happens from my Android Tablet :thinking:

I would report this to samba and file a fedora bugzilla as well referring to the upstream bug.

Firstly,run ‘smbstatus’ to see which version samba and protocol used and any files locked. Secondly,edit /etc/samba/smb.conf adding that “vfs object=full_audit” “full_audit:priority = debug” which will generate log with more details. These information is important for samba teams to solve your problems.Report your issue to them.
Meanwhile,I guess android used NT1 protocol which deprecated by Microsoft officially.If it’s NT1 eventually,samba teams can do nothing,too.Maybe you can try FTP ,NFS,or other client on Android which support SMB3 ?