On Wed, 2024-01-31 at 08:02 +0100, Paul Leiber wrote: > Am 25.01.2024 um 22:28 schrieb Paul Leiber: > > Dear Debian user list members, > > > > I am trying to run network related stuff (Samba, Zabbix) on a Raspberry > > Pi 4B in a virtualized environment using Debian Bookworm and Xen. I am > > running into reproducible complete system crashes/reboots due to a Xen > > watchdog triggering under certain, seemingly strange conditions (the
Raspberry Pis have a watchdog? Maybe disable the watchdog and see what happens? > > number of VLANs involved seems to play a role, running tcpdump on > > certain interfaces prevents this issue, ...). If you are interested in > > the long version, you can find it here [1]. > > > > Some people on xen-devel pointed out to me two unhandled SMC calls in > > the boot logs which could be the root of the problem. I am now trying to > > find out where these calls come from to get closer to the root cause. > > The suspected calls are the following ones: > > > > (XEN) d0v0 Unhandled SMC/HVC: 0x84000050 > > (XEN) d0v0 Unhandled SMC/HVC: 0x8600ff01 > > > > These calls happen during the Dom0 boot process, so it's something from > > inside Linux and nothing Xen related, I've been told. The current > > working hypothesis is that the calls are trying to find some module not > > emulated by Xen and are therefore failing, leading to Linux waiting for > > the reply, and subsequently to the Xen watchdog triggering and rebooting. > > > > From what I could find out in ARM documentation, the unhandled SMC > > calls probably have the following purpose: > > > > 0x84000050 = TRNG_VERSION, returns the implemented TRNG (True Random > > Number Generator) ABI version [2] > > 0x8600ff01 = Call UID Query for Vendor Specific Hypervisor Service, > > Returns a unique identifier of the service provider [3] > > > > The more likely cause is the second call to the address 0x8600ff01. > > > > Now I simply have no idea how to find out where in the Linux boot > > process these calls are made. I tried poking into the Linux sources a > > bit, and I couldn't find an exact match for these call addresses, so I > > assume these addresses are assembled from different parts. There are > > some matches for "0x8600" and for "ff01", but I couldn't identify if > > these matches are relevant. > > > > I tried to find out if strace could help, but from what I understand, > > this is related to commands coming from userspace, so I am not sure that > > strace helps during the boot process. > > > > I'd appreciate it if somebody more knowledgeable would point me in the > > right direction. If more information is needed, I can provide it. I would search for the message 'Unhandled SMC/HVC' itself, or even for 'Unhandled', not for the address. The address is probably determined at runtime and not hardcoded. Do you get better results with qemu/kvm? Xen is more like 'hmm' than anything else.