Bug 14352 - vfs_fruit: PANIC when trying to do time machine backup to smb share
Summary: vfs_fruit: PANIC when trying to do time machine backup to smb share
Status: RESOLVED FIXED
Alias: None
Product: Samba 4.1 and newer
Classification: Unclassified
Component: VFS Modules (show other bugs)
Version: 4.12.1
Hardware: x64 Solaris
: P5 normal (vote)
Target Milestone: ---
Assignee: Karolin Seeger
QA Contact: Samba QA Contact
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-20 18:04 UTC by Rouven
Modified: 2020-05-05 06:58 UTC (History)
4 users (show)

See Also:


Attachments
set of log files. (1.80 MB, application/x-gzip)
2020-04-20 18:04 UTC, Rouven
no flags Details
patch for v4-12 (5.59 KB, patch)
2020-04-22 17:10 UTC, Anoop C S
vl: review+
gd: review+
anoopcs: ci-passed+
Details
patch for v4-12 (5.66 KB, patch)
2020-04-28 08:44 UTC, Anoop C S
gd: review+
anoopcs: ci-passed+
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Rouven 2020-04-20 18:04:04 UTC
Created attachment 15935 [details]
set of log files.

Trying to do a time machine backup to a smb share from MacOSX 10.15.4 I receive a kernel panic.

On "normal" shares I get a normal behavior. On samba 4.11.x there was everything okay.

Steps I did to reproduce the issue:
0. Delete time machine backup in MacOS X app.
1. Stop smb server.
2. clean logs.
3. start smb server.
4. connect with the Time Machine app in MacOS 10.15.4.
4.1. choose share (FileVault) from list in Time Machine app.
4.2. type credentials.
4.3. receive segfault.
5. stop smb server.

I received:
[2020/04/12 11:15:21.535160,  0] ../../lib/dbwrap/dbwrap.c:82(dbwrap_record_get_value)
 PANIC: assert failed at ../../lib/dbwrap/dbwrap.c(82): rec->value_valid
[2020/04/12 11:15:21.535322,  0] ../../source3/lib/util.c:830(smb_panic_s3)
 PANIC (pid 1707): assert failed: rec->value_valid
[2020/04/12 11:15:21.536138,  0] ../../lib/util/fault.c:265(log_stack_trace)
 BACKTRACE: 37 stack frames:
  #0 /usr/lib/samba/amd64/libsamba-util.so.0.0.1'log_stack_trace+0x26 [0xfffffd7fee51de66]
  #1 /usr/lib/samba/amd64/libsmbconf.so.0'smb_panic_s3+0x26 [0xfffffd7fedf5a596]
  #2 /usr/lib/samba/amd64/libsamba-util.so.0.0.1'smb_panic+0x1f [0xfffffd7fee51df3f]
  #3 /usr/lib/samba/private/amd64/libdbwrap-samba4.so'dbwrap_record_get_value+0x2a [0xfffffd7fece2627a]
  #4 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'get_share_mode_lock+0x109 [0xfffffd7fee7195c9]
  #5 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'smbd_contend_level2_oplocks_begin+0xa1 [0xfffffd7fee7f7761]
  #6 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'brl_lock+0x635 [0xfffffd7fee710f45]
  #7 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'do_lock_fn+0xa4 [0xfffffd7fee70d534]
  #8 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'share_mode_do_locked_fn+0x86 [0xfffffd7fee7174b6]
  #9 /usr/lib/samba/amd64/libsmbconf.so.0'dbwrap_watched_do_locked_fn+0xfa [0xfffffd7fedf622ca]
  #10 /usr/lib/samba/private/amd64/libdbwrap-samba4.so'db_tdb_do_locked+0x12f [0xfffffd7fece295cf]
  #11 /usr/lib/samba/private/amd64/libdbwrap-samba4.so'dbwrap_do_locked+0x48 [0xfffffd7fece269a8]
  #12 /usr/lib/samba/amd64/libsmbconf.so.0'dbwrap_watched_do_locked+0x6f [0xfffffd7fedf60d7f]
  #13 /usr/lib/samba/private/amd64/libdbwrap-samba4.so'dbwrap_do_locked+0x48 [0xfffffd7fece269a8]
  #14 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'share_mode_do_locked+0xd2 [0xfffffd7fee719b82]
  #15 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'do_lock+0xf0 [0xfffffd7fee70dfe0]
  #16 /usr/lib/samba/amd64/vfs/fruit.so'fruit_create_file+0x7ba [0xfffffd7fe88a55aa]
  #17 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'smbd_smb2_request_process_create+0xa07 [0xfffffd7fee7d3237]
  #18 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'smbd_smb2_request_dispatch+0xc8f [0xfffffd7fee7c985f]
  #19 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'smbd_smb2_connection_handler+0x621 [0xfffffd7fee7ca7e1]
  #20 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'tevent_common_invoke_fd_handler+0x80 [0xfffffd7fecfca580]
  #21 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'epoll_event_loop_once+0x22c [0xfffffd7fecfd180c]
  #22 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'std_event_loop_once+0x40 [0xfffffd7fecfcf8f0]
  #23 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'_tevent_loop_once+0x95 [0xfffffd7fecfc9bd5]
  #24 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'tevent_common_loop_wait+0x23 [0xfffffd7fecfc9e43]
  #25 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'std_event_loop_wait+0x40 [0xfffffd7fecfcf870]
  #26 /usr/lib/samba/private/amd64/libsmbd-base-samba4.so'smbd_process+0x777 [0xfffffd7fee7b8677]
  #27 /usr/lib/samba/sbin/amd64/smbd'smbd_accept_connection+0x189 [0x40d5b9]
  #28 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'tevent_common_invoke_fd_handler+0x80 [0xfffffd7fecfca580]
  #29 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'epoll_event_loop_once+0x22c [0xfffffd7fecfd180c]
  #30 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'std_event_loop_once+0x40 [0xfffffd7fecfcf8f0]
  #31 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'_tevent_loop_once+0x95 [0xfffffd7fecfc9bd5]
  #32 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'tevent_common_loop_wait+0x23 [0xfffffd7fecfc9e43]
  #33 /usr/lib/samba/private/amd64/libtevent.so.0.10.2'std_event_loop_wait+0x40 [0xfffffd7fecfcf870]
  #34 /usr/lib/samba/sbin/amd64/smbd'main+0x1a0f [0x40f9ff]
  #35 /usr/lib/samba/sbin/amd64/smbd'_start_crt+0x83 [0x408e73]
  #36 /usr/lib/samba/sbin/amd64/smbd'_start+0x18 [0x408dd8]
[2020/04/12 11:15:21.538230,  0] ../../source3/lib/dumpcore.c:315(dump_core)
 dumping core in /var/samba/log/cores/smbd

Complete set of logs with log level 10 is attached.
Comment 1 Anoop C S 2020-04-21 04:59:07 UTC
Possible fix: https://gitlab.com/samba-team/samba/-/merge_requests/1284
Comment 2 Anoop C S 2020-04-22 17:10:51 UTC
Created attachment 15936 [details]
patch for v4-12

Attaching back port for 4.12
Comment 3 Guenther Deschner 2020-04-28 08:40:15 UTC
Comment on attachment 15936 [details]
patch for v4-12

LGTM, just one thing: can you also add the cherry-pick info to the patch?
Comment 4 Anoop C S 2020-04-28 08:44:54 UTC
Created attachment 15942 [details]
patch for v4-12
Comment 5 Guenther Deschner 2020-04-28 08:58:42 UTC
Comment on attachment 15942 [details]
patch for v4-12

perfect :-)
Comment 6 Guenther Deschner 2020-04-28 08:59:19 UTC
Karolin, please add to v4.12, thanks!
Comment 7 Karolin Seeger 2020-05-04 09:11:12 UTC
(In reply to Guenther Deschner from comment #6)
Pushed to autobuild-v4-12-test.
Comment 8 Karolin Seeger 2020-05-05 06:58:35 UTC
(In reply to Karolin Seeger from comment #7)
Pushed to v4-12-test.
Closing out bug report.

Thanks!