Bug 16187 - vfs_recycle crash if streams_xattr is enabled
Summary: vfs_recycle crash if streams_xattr is enabled
Status: NEW
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: VFS Modules (show other bugs)
Version: 4.24.4
Hardware: All All
: P5 normal (vote)
Target Milestone: ---
Assignee: Samba QA Contact
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-07-25 16:13 UTC by ppw0
Modified: 2026-07-25 16:13 UTC (History)
0 users

See Also:


Attachments
gdb backtrace (5.93 KB, text/plain)
2026-07-25 16:13 UTC, ppw0
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description ppw0 2026-07-25 16:13:59 UTC
Created attachment 19131 [details]
gdb backtrace

If the streams_xattr module is enabled with the recycle module, Samba will crash as it tries to delete a file:

```
[2026/07/25 17:56:50.964474,  0] ../../source3/modules/vfs_default.c:1306(vfswrap_renameat)
  PANIC: assert failed at ../../source3/modules/vfs_default.c(1306): !is_named_stream(smb_fname_src)
[2026/07/25 17:56:50.964551,  0] ../../lib/util/fault.c:178(smb_panic_log)
  ===============================================================
[2026/07/25 17:56:50.964583,  0] ../../lib/util/fault.c:179(smb_panic_log)
  INTERNAL ERROR: assert failed: !is_named_stream(smb_fname_src) in smbd (smbd[192.168.1.) (client [192.168.1.100]) pid 2094 (4.24.4)
[2026/07/25 17:56:50.964622,  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
[2026/07/25 17:56:50.964663,  0] ../../lib/util/fault.c:191(smb_panic_log)
  ===============================================================
[2026/07/25 17:56:50.964695,  0] ../../lib/util/fault.c:192(smb_panic_log)
  PANIC (pid 2094): assert failed: !is_named_stream(smb_fname_src) in 4.24.4
[2026/07/25 17:56:50.965562,  0] ../../lib/util/fault.c:303(log_stack_trace)
  BACKTRACE: 28 stack frames:
   #0 /usr/lib64/samba/libgenrand-private-samba.so(log_stack_trace+0x2d) [0x7ed5e9d4081d]
   #1 /usr/lib64/samba/libgenrand-private-samba.so(smb_panic+0xd) [0x7ed5e9d40abd]
   #2 /usr/lib64/samba/libsmbd-base-private-samba.so(+0x4350a) [0x7ed5ea12150a]
   #3 /usr/lib64/samba/vfs/recycle.so(+0x399f) [0x7ed5e504a99f]
   #4 /usr/lib64/samba/libsmbd-base-private-samba.so(delete_all_streams+0x12d) [0x7ed5ea15afdd]
   #5 /usr/lib64/samba/libsmbd-base-private-samba.so(close_file_smb+0x1581) [0x7ed5ea15cf61]
   #6 /usr/lib64/samba/libsmbd-base-private-samba.so(+0xb52eb) [0x7ed5ea1932eb]
   #7 /usr/lib64/samba/libsmbd-base-private-samba.so(smbd_smb2_request_process_close+0x1ee) [0x7ed5ea193d4e]
   #8 /usr/lib64/samba/libsmbd-base-private-samba.so(smbd_smb2_request_dispatch+0x10f4) [0x7ed5ea186944]
   #9 /usr/lib64/samba/libsmbd-base-private-samba.so(+0xa99f0) [0x7ed5ea1879f0]
   #10 /usr/lib64/libtevent.so.0(tevent_common_invoke_fd_handler+0x95) [0x7ed5e9ccc195]
   #11 /usr/lib64/libtevent.so.0(+0x106ce) [0x7ed5e9cd36ce]
   #12 /usr/lib64/libtevent.so.0(+0xe0cb) [0x7ed5e9cd10cb]
   #13 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x93) [0x7ed5e9ccb2b3]
   #14 /usr/lib64/libtevent.so.0(tevent_common_loop_wait+0x1b) [0x7ed5e9ccb5ab]
   #15 /usr/lib64/libtevent.so.0(+0xe05b) [0x7ed5e9cd105b]
   #16 /usr/lib64/samba/libsmbd-base-private-samba.so(smbd_process+0x899) [0x7ed5ea175969]
   #17 smbd: client [192.168.1.100](+0xc81b) [0x62bcd6b2d81b]
   #18 /usr/lib64/libtevent.so.0(tevent_common_invoke_fd_handler+0x95) [0x7ed5e9ccc195]
   #19 /usr/lib64/libtevent.so.0(+0x106ce) [0x7ed5e9cd36ce]
   #20 /usr/lib64/libtevent.so.0(+0xe0cb) [0x7ed5e9cd10cb]
   #21 /usr/lib64/libtevent.so.0(_tevent_loop_once+0x93) [0x7ed5e9ccb2b3]
   #22 /usr/lib64/libtevent.so.0(tevent_common_loop_wait+0x1b) [0x7ed5e9ccb5ab]
   #23 /usr/lib64/libtevent.so.0(+0xe05b) [0x7ed5e9cd105b]
   #24 smbd: client [192.168.1.100](main+0x1511) [0x62bcd6b2a2d1]
   #25 /usr/lib64/libc.so.6(+0x271fe) [0x7ed5e9b001fe]
   #26 /usr/lib64/libc.so.6(__libc_start_main+0x8b) [0x7ed5e9b0031b]
   #27 smbd: client [192.168.1.100](_start+0x25) [0x62bcd6b2aeb5]
[2026/07/25 17:56:50.966031,  0] ../../source3/lib/util.c:701(call_panic_action)
  call_panic_action: Calling panic action [/usr/share/samba/panic-action 2094]
sh: line 1: /usr/share/samba/panic-action: No such file or directory
[2026/07/25 17:56:50.968627,  0] ../../source3/lib/util.c:724(call_panic_action)
  call_panic_action: action returned status 127
[2026/07/25 17:56:50.968710,  0] ../../source3/lib/dumpcore.c:318(dump_core)
  coredump is handled by helper binary specified at /proc/sys/kernel/core_pattern
```

In the example backtrace, only the vfs_recycle and streams_xattr modules are enabled. There are no issues if streams_xattr is disabled.

host: Gentoo
client: Windows 10
version: 4.24.4

I'm also attaching a gdb backtrace from another crash.