On Tue, Jul 29, 2025 at 06:01:25PM +0200, Cornelia Huck wrote: > On Thu, Jul 17 2025, Daniel P. Berrangé <berra...@redhat.com> wrote: > > > On Thu, Jul 17, 2025 at 05:17:42PM +0200, Cornelia Huck wrote: > >> On Tue, Jul 15 2025, Daniel P. Berrangé <berra...@redhat.com> wrote: > >> > >> > On Tue, Jul 15, 2025 at 09:16:24AM -0700, Andrea Bolognani wrote: > >> >> You can point them to documentation over and over again, or you can > >> >> work to prevent the confusion/annoyance from showing up in the first > >> >> place. Which of the two approaches is a better use of anyone's time > >> >> is up for debate. > >> >> > >> >> I for one am grateful that someone put the time in all those years > >> >> ago and, as a result, PCI and USB controllers don't suffer from the > >> >> problem today. Ultimately it's up to Connie though. > >> > > >> > The PCI/USB controller situation is not the same tradeoff though. > >> > Those guest kernel drivers will identify and attach to these two > >> > controllers regardless of their PCI vendor/product, via the PCI > >> > class property. In that case changing the PCI ID and other device > >> > metadata in QEMU is cheap as it has no negative impact on guest OS > >> > driver compibility. > >> > > >> > In the case of 6300ESB though the guest driver is tied directly to > >> > the currently used PCI device product/vendor ID. > >> > > >> > If we change this then we have actually created new functional > >> > problems with guest/QEMU compatibility, in order to placate a > >> > non-functional problem. That is not a good thing. > >> > >> I don't think the suggestion was to disable the existing driver on > >> non-Intel setups, but to add a more generic one. Still, more work to get > >> this actually propagated into guests than doing the change in > >> QEMU. Before I start down that route, I'd like to know whether the issue > >> is actually big enough to make investing time there worth it. > > > > If we're a mmgmt app provisioning a guest, we have to choose what > > watchdog to create - either the old one which works everywhere > > that currently has a driver, or the new one will will work in > > far fewer places. We'll have to wire up guest OS info about > > watchdogs into osinfo, and then wire up all the mgmt apps to > > query this and take action based off it. All possible, but it > > still feels like a huge waste of time to me. > > The fact that the device is something emulated and not the Intel > hardware device is actually visible to the guest: > > 00:02.0 System peripheral: Intel Corporation 6300ESB Watchdog Timer > Subsystem: Red Hat, Inc. QEMU Virtual Machine > Flags: fast devsel > Memory at 10804000 (32-bit, non-prefetchable) [size=16] > Kernel driver in use: i6300ESB timer > Kernel modules: i6300esb > > (lspci -v so unfortunately not immediately obvious, but still) > > AFAIK the BSDs do not have a driver for this device at the moment -- and > given what turns up when searching for i6300ESB, someone implementing a > driver is far more likely to pick the exising PCI ID.
I see vague references (with unfortunately 404 links) to FreeBSD supporting some ICH watchdogs, which might mean it is compatible with the q35 built-in watchdog that all x86 q35 machines get by default. That wouldn't help non-x86 BSD though. > Windows would also need some dance according to Yan's mail, for unclear > benefits. Off-list, Richard Jones pointed to the ACPI Watchdog WADT specification from Microsoft which appears to the most viable solution for Windows guests - at least from x86 POV, but hopefully any future Wndows aarch64 too: https://download.microsoft.com/download/a/f/7/af7777e5-7dcd-4800-8a0a-b18336565f5b/HardwareWDTSpec.doc The ACPI watchdog sounds like potentially the best bet for a working solution across Linux and Windows, on any arch that does ACPI.... if we can just find someone to write a QEMU driver for it.... With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|