Bug 48733 - PANIC/sig 11 in "samba_dnsupdate --local"
PANIC/sig 11 in "samba_dnsupdate --local"
Status: CLOSED FIXED
Product: UCS@school
Classification: Unclassified
Component: Samba 4
UCS@school 4.4
Other Linux
: P5 normal (vote)
: UCS@school 4.4 v1
Assigned To: Arvid Requate
Sönke Schwardt-Krummrich
:
Depends on: 27395
Blocks:
  Show dependency treegraph
 
Reported: 2019-02-22 00:11 CET by Sönke Schwardt-Krummrich
Modified: 2019-05-15 13:43 CEST (History)
1 user (show)

See Also:
What kind of report is it?: Bug Report
What type of bug is this?: 6: Setup Problem: Issue for the setup process
Who will be affected by this bug?: 4: Will affect most installed domains
How will those affected feel about the bug?: 4: A User would return the product
User Pain: 0.549
Enterprise Customer affected?:
School Customer affected?:
ISV affected?:
Waiting Support:
Flags outvoted (downgraded) after PO Review:
Ticket number:
Bug group (optional):
Max CVSS v3 score:


Attachments
join.log (45.87 KB, application/gzip)
2019-02-22 00:18 CET, Sönke Schwardt-Krummrich
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sönke Schwardt-Krummrich univentionstaff 2019-02-22 00:11:13 CET
Configure 98univention-samba4-dns.inst Wed Feb 20 20:30:49 CET 2019
2019-02-20 20:30:49.451395023+01:00 (in joinscript_init)
Waiting for RID Pool replication: done.
Object created: uid=dns-slave176,cn=users,dc=nstx,dc=local
looking for spn account "dns-slave176" in local samba
looking for spn account "dns-slave176" in local samba
Modified 1 records successfully
Added 1 records successfully
Expiry for user 'dns-slave176' disabled.
Not updating samba4/sysvol/sync/cron
Adding CNAME record "c01fee02-45ea-4189-9f4a-a34fa99955cb._msdcs slave176.nstx.local." to zone nstx.local...
done
Adding TXT record "_kerberos NSTX.LOCAL" to zone nstx.local...
done
===============================================================
INTERNAL ERROR: Signal 11 in pid 5484 (4.10.0rc2-Univention)
Please read the Trouble-Shooting section of the Samba HOWTO
===============================================================
smb_panic_default: PANIC (pid 5484): internal error
BACKTRACE: 19 stack frames:
 #0 /usr/lib/x86_64-linux-gnu/libsamba-util.so.0(log_stack_trace+0x2d) [0x7f97bba45e0d]
 #1 /usr/lib/x86_64-linux-gnu/libsamba-util.so.0(smb_panic+0x4b) [0x7f97bba45f2b]
 #2 /usr/lib/x86_64-linux-gnu/libsamba-util.so.0(+0x1a16d) [0x7f97bba4616d]
 #3 /lib/x86_64-linux-gnu/libpthread.so.0(+0x110c0) [0x7f97bf3ad0c0]
 #4 /usr/lib/x86_64-linux-gnu/libtalloc.so.2(talloc_get_name+0) [0x7f97bc2db9e0]
 #5 /usr/lib/x86_64-linux-gnu/libpytalloc-util.so.2(+0x1c6d) [0x7f97b9fd4c6d]
 #6 /usr/lib/python2.7/dist-packages/samba/gensec.x86_64-linux-gnu.so(+0x399f) [0x7f97a745099f]
 #7 /usr/bin/python2.7(PyEval_EvalFrameEx+0x61a) [0x556e6963b84a]
 #8 /usr/bin/python2.7(PyEval_EvalFrameEx+0x5f1f) [0x556e6964114f]
 #9 /usr/bin/python2.7(PyEval_EvalCodeEx+0x235) [0x556e696399f5]
 #10 /usr/bin/python2.7(PyEval_EvalFrameEx+0x6218) [0x556e69641448]
 #11 /usr/bin/python2.7(PyEval_EvalCodeEx+0x235) [0x556e696399f5]
 #12 /usr/bin/python2.7(PyEval_EvalCode+0x19) [0x556e696397b9]
 #13 /usr/bin/python2.7(+0x129bff) [0x556e69669bff]
 #14 /usr/bin/python2.7(PyRun_FileExFlags+0x82) [0x556e69664b52]
 #15 /usr/bin/python2.7(PyRun_SimpleFileExFlags+0x19e) [0x556e6966469e]
 #16 /usr/bin/python2.7(Py_Main+0x6c1) [0x556e69615771]
 #17 /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf1) [0x7f97be6f82e1]
 #18 /usr/bin/python2.7(_start+0x2a) [0x556e69614f9a]
/usr/lib/univention-install/98univention-samba4-dns.inst: Zeile 163:  5484 Abgebrochen             samba_dnsupdate --local
2019-02-20 20:31:19.365795884+01:00 (in joinscript_save_current_version)
Configure 98univention-samba4-saml-kerberos.inst Wed Feb 20 20:31:19 CET 2019
Comment 1 Sönke Schwardt-Krummrich univentionstaff 2019-02-22 00:18:05 CET
Created attachment 9859 [details]
join.log

Happened on a UCS@school 4.4 edu DC slave during initial join.
Comment 2 Sönke Schwardt-Krummrich univentionstaff 2019-02-22 00:39:45 CET
Happened also on a UCS@school 4.4 *admin* DC slave during initial join.
Comment 3 Sönke Schwardt-Krummrich univentionstaff 2019-02-22 00:58:05 CET
Seems to be reproducible. My second UCS@school edu slave showed also a SIG11 in samba_dnsupdate.
Comment 4 Arvid Requate univentionstaff 2019-02-22 13:48:16 CET
Ok, I got a core dump and I have an idea what's going on. I think we should simply use the --use-samba-tool options of samba_dnsupdate in this joinscript and get rid of our own --local option (Patch 95_dnsupdate.quilt).

(gdb) py-bt
Traceback (most recent call first):
  File "/usr/sbin/samba_dnsupdate", line 200, in get_krb5_rw_dns_server
    gensec_client.set_credentials(creds)
  File "/usr/sbin/samba_dnsupdate", line 527, in call_nsupdate
    server = get_krb5_rw_dns_server(creds, zone)
  File "/usr/sbin/samba_dnsupdate", line 995, in <module>
    call_nsupdate(d)

The thing is, that the "creds" variable is unset at this point, and apparently the gensec (or other) C code changed and can't handle that any more.


My first attempt to fix the --local option ended with nsupdate telling me that the nameserver refused to accept the record update. Maybe this only works in the context of the joinscript, no clue why it used to work there. So, maybe better use the upstream option --use-samba-tool. Only drawback of that is, that it bypasses dlz_bind9 and writes the records to the DomainDnsZones partition directly. That should be ok when (re-)provisioning Samba during a UCS@School Slave (re-)join. We don't have to consider any legacy DNS zone positions in that situation.
Comment 5 Arvid Requate univentionstaff 2019-02-22 16:13:22 CET
I've adjusted the joinscript to use the --use-samba-tool option instead of the --local option. We may drop the obsolete Samba patch sometime in the future.
Comment 6 Sönke Schwardt-Krummrich univentionstaff 2019-02-27 14:17:36 CET
Ok, looks good. No more tracebacks during join.

OK: code change
OK: functional test
Comment 7 Sönke Schwardt-Krummrich univentionstaff 2019-03-12 11:01:08 CET
UCS@school 4.4 v1 has been released.

https://docs.software-univention.de/release-notes-ucsschool-4.4v1-de.html

If this error occurs again, please clone this bug.