Greg Steuck <gne...@openbsd.org> writes:

>> I suspect around wsdisplay_suspend() and wsdisplay_resume(); I've recently
>> discovered that the mux aspects are insane.
>
> I applied the patches below and added a bunch of tracing to
> subr_suspend. First zzz:

I also added this:

modified   sys/kern/subr_autoconf.c
@@ -827,8 +827,10 @@ config_suspend(struct device *dev, int act)
        int r;
 
        device_ref(dev);
-       if (ca->ca_activate)
+       if (ca->ca_activate) {
                r = (*ca->ca_activate)(dev, act);
+               printf("config_suspend: %s %d\n", dev->dv_xname, r);
+       }
        else
                r = config_activate_children(dev, act);

Which gives the following joyful traces (failed attemp 2 before
successful attemp 1). The important bit, I guess, is that
> config_suspend: amdgpu0 0
is not printed the second time around which I read as ca->ca_activate
for amdgpu0 never returned? I can reconfirm with more tracing if
somebody thinks my conclusion is premature.

zzz 2:

> /usr/src/sys/kern/subr_suspend.c:65
> /usr/src/sys/kern/subr_suspend.c:81
> /usr/src/sys/kern/subr_suspend.c:84
> /usr/src/sys/kern/subr_suspend.c:104
> /usr/src/sys/kern/subr_suspend.c:106
> config_suspend: scsibus0 0
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> uhub0 detached
> config_suspend: usb0 0
> config_suspend: xhci0 0
> uhub1 detached
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> config_suspend: drm0 0
> config_suspend: wsdisplay0 0


zzz 1:

> /usr/src/sys/kern/subr_suspend.c:65
> /usr/src/sys/kern/subr_suspend.c:81
> /usr/src/sys/kern/subr_suspend.c:84
> /usr/src/sys/kern/subr_suspend.c:104
> /usr/src/sys/kern/subr_suspend.c:106
> config_suspend: scsibus0 0
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> uhub0 detached
> config_suspend: usb0 0
> config_suspend: xhci0 0
> uhub1 detached
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> config_suspend: drm0 0
> config_suspend: wsdisplay0 0
> config_suspend: amdgpu0 0
> config_suspend: azalia0 0
> uhub2 detached
> config_suspend: usb2 0
> config_suspend: xhci2 0
> config_suspend: wskbd1 0
> config_suspend: uhidev0 0
> config_suspend: wsmouse0 0
> config_suspend: uhidev1 0
> config_suspend: wsmouse1 0
> config_suspend: uhidev2 0
> config_suspend: uhidev3 0
> config_suspend: uhidev4 0
> wskbd1: disconnecting from wsdisplay0
> wskbd1 detached
> ukbd0 detached
> uhidev0 detached
> wsmouse0 detached
> ums0 detached
> uhidev1 detached
> wsmouse1 detached
> ums1 detached
> uhidev2 detached
> fido0 detached
> uhidev3 detached
> uhid0 detached
> uhidev4 detached
> uhub4 detached
> uhub3 detached
> config_suspend: usb3 0
> config_suspend: xhci3 0
> config_suspend: audio0 0
> config_suspend: azalia1 0
> config_suspend: pci9 0
> config_suspend: ppb8 0
> config_suspend: scsibus5 0
> config_suspend: ahci2 0
> config_suspend: scsibus6 0
> config_suspend: ahci3 0
> config_suspend: pci10 0
> config_suspend: ppb9 0
> config_suspend: wskbd0 0
> config_suspend: pckbd0 0
> config_suspend: pckbc0 0
> config_suspend: pchb3 0
> config_suspend: pchb4 0
> config_suspend: pchb5 0
> config_suspend: pchb6 0
> config_suspend: pchb7 0
> config_suspend: pchb8 0
> config_suspend: pchb9 0
> config_suspend: pchb10 0
> config_suspend: pci0 0
> config_suspend: vmm0 0
> /usr/src/sys/kern/subr_suspend.c:114
> /usr/src/sys/kern/subr_suspend.c:116
> /usr/src/sys/kern/subr_suspend.c:119
> /usr/src/sys/kern/subr_suspend.c:122
> /usr/src/sys/kern/subr_suspend.c:132
> /usr/src/sys/kern/subr_suspend.c:137
> /usr/src/sys/kern/subr_suspend.c:151
> /usr/src/sys/kern/subr_suspend.c:153
> config_suspend: scsibus0 0
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> config_suspend: usb0 0
> config_suspend: xhci0 0
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> config_suspend: amdgpu0 0
> config_suspend: azalia0 0
> config_suspend: usb2 0
> config_suspend: xhci2 0
> config_suspend: usb3 0
> config_suspend: xhci3 0
> config_suspend: azalia1 0
> config_suspend: pci9 0
> config_suspend: ppb8 0
> config_suspend: scsibus5 0
> config_suspend: ahci2 0
> config_suspend: scsibus6 0
> config_suspend: ahci3 0
> config_suspend: pci10 0
> config_suspend: ppb9 0
> config_suspend: wskbd0 0
> config_suspend: pckbd0 0
> config_suspend: pckbc0 0
> config_suspend: pchb3 0
> config_suspend: pchb4 0
> config_suspend: pchb5 0
> config_suspend: pchb6 0
> config_suspend: pchb7 0
> config_suspend: pchb8 0
> config_suspend: pchb9 0
> config_suspend: pchb10 0
> config_suspend: pci0 0
> config_suspend: vmm0 0
> config_suspend: scsibus0 0
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> config_suspend: usb0 0
> config_suspend: xhci0 0
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> config_suspend: amdgpu0 0
> config_suspend: azalia0 0
> config_suspend: usb2 0
> config_suspend: xhci2 0
> config_suspend: usb3 0
> xhci3: save state timeout
> config_suspend: xhci3 0
> config_suspend: azalia1 0
> config_suspend: pci9 0
> config_suspend: ppb8 0
> config_suspend: scsibus5 0
> config_suspend: ahci2 0
> config_suspend: scsibus6 0
> config_suspend: ahci3 0
> config_suspend: pci10 0
> config_suspend: ppb9 0
> config_suspend: wskbd0 0
> config_suspend: pckbd0 0
> config_suspend: pckbc0 0
> config_suspend: pchb3 0
> config_suspend: pchb4 0
> config_suspend: pchb5 0
> config_suspend: pchb6 0
> config_suspend: pchb7 0
> config_suspend: pchb8 0
> config_suspend: pchb9 0
> config_suspend: pchb10 0
> config_suspend: pci0 0
> config_suspend: vmm0 0
> suspend
> resume 1
> /usr/src/sys/kern/subr_suspend.c:194
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> config_suspend: usb0 0
> config_suspend: xhci0 0
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> config_suspend: amdgpu0 0
> config_suspend: azalia0 0
> config_suspend: usb2 0
> config_suspend: xhci2 0
> config_suspend: usb3 0
> config_suspend: xhci3 0
> config_suspend: audio0 0
> config_suspend: azalia1 0
> config_suspend: pci9 0
> config_suspend: ppb8 0
> config_suspend: scsibus5 0
> config_suspend: ahci2 0
> config_suspend: scsibus6 0
> config_suspend: ahci3 0
> config_suspend: pci10 0
> config_suspend: ppb9 0
> config_suspend: wskbd0 0
> config_suspend: pckbd0 0
> config_suspend: pckbc0 0
> config_suspend: pchb3 0
> config_suspend: pchb4 0
> config_suspend: pchb5 0
> config_suspend: pchb6 0
> config_suspend: pchb7 0
> config_suspend: pchb8 0
> config_suspend: pchb9 0
> config_suspend: pchb10 0
> config_suspend: pci0 0
> config_suspend: vmm0 0
> config_suspend: scsibus0 0
> /usr/src/sys/kern/subr_suspend.c:198
> /usr/src/sys/kern/subr_suspend.c:217
> /usr/src/sys/kern/subr_suspend.c:220
> /usr/src/sys/kern/subr_suspend.c:222
> /usr/src/sys/kern/subr_suspend.c:226
> config_suspend: acpihpet0 0
> config_suspend: com0 0
> config_suspend: acpibtn0 0
> config_suspend: amdgpio0 0
> config_suspend: tpm0 0
> config_suspend: cpu0 0
> config_suspend: cpu1 0
> config_suspend: cpu2 0
> config_suspend: cpu3 0
> config_suspend: cpu4 0
> config_suspend: cpu5 0
> config_suspend: cpu6 0
> config_suspend: cpu7 0
> config_suspend: ioapic0 0
> config_suspend: ioapic1 0
> config_suspend: pchb0 0
> config_suspend: sd0 0
> config_suspend: scsibus1 0
> config_suspend: nvme0 0
> config_suspend: pci3 0
> config_suspend: ppb2 0
> config_suspend: em0 0
> config_suspend: pci4 0
> config_suspend: ppb3 0
> uhub0 at usb0 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
> addr 1
> config_suspend: usb0 0
> config_suspend: xhci0 0
> uhub1 at usb1 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
> addr 1
> config_suspend: usb1 0
> config_suspend: xhci1 0
> config_suspend: pci5 0
> config_suspend: ppb4 0
> config_suspend: scsibus2 0
> config_suspend: ahci0 0
> config_suspend: pci6 0
> config_suspend: ppb5 0
> config_suspend: cd0 0
> config_suspend: scsibus3 0
> config_suspend: ahci1 0
> config_suspend: pci7 0
> config_suspend: ppb6 0
> config_suspend: pci2 0
> config_suspend: ppb1 0
> config_suspend: pci1 0
> config_suspend: ppb0 0
> config_suspend: pchb1 0
> config_suspend: sd1 0
> config_suspend: scsibus4 0
> config_suspend: nvme1 0
> config_suspend: pci8 0
> config_suspend: ppb7 0
> config_suspend: pchb2 0
> [drm] *ERROR* IB test failed on gfx_low (-60).
> [drm] *ERROR* IB test failed on gfx_high (-60).
> [drm] *ERROR* ib ring test failed (-60).
> config_suspend: drm0 0
> config_suspend: wsdisplay0 0
> config_suspend: amdgpu0 0
> config_suspend: azalia0 0
> uhub2 at usb2 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
> addr 1
> config_suspend: usb2 0
> config_suspend: xhci2 0
> uhub3 at usb3 configuration 1 interface 0 "AMD xHCI root hub" rev 3.00/1.00 
> addr 1
> config_suspend: usb3 0
> config_suspend: xhci3 0
> config_suspend: audio0 0
> config_suspend: azalia1 0
> config_suspend: pci9 0
> config_suspend: ppb8 0
> config_suspend: scsibus5 0
> config_suspend: ahci2 0
> config_suspend: scsibus6 0
> config_suspend: ahci3 0
> config_suspend: pci10 0
> config_suspend: ppb9 0
> config_suspend: wskbd0 0
> config_suspend: pckbd0 0
> config_suspend: pckbc0 0
> config_suspend: pchb3 0
> config_suspend: pchb4 0
> config_suspend: pchb5 0
> config_suspend: pchb6 0
> config_suspend: pchb7 0
> config_suspend: pchb8 0
> config_suspend: pchb9 0
> config_suspend: pchb10 0
> config_suspend: pci0 0
> config_suspend: vmm0 0
> config_suspend: scsibus0 0
> /usr/src/sys/kern/subr_suspend.c:228
> /usr/src/sys/kern/subr_suspend.c:241
> /usr/src/sys/kern/subr_suspend.c:244
> /usr/src/sys/kern/subr_suspend.c:247
> /usr/src/sys/kern/subr_suspend.c:249
> /usr/src/sys/kern/subr_suspend.c:252
> wakeup event: PWRBTN
> /usr/src/sys/kern/subr_suspend.c:255
> uhub4 at uhub3 port 1 configuration 1 interface 0 "Texas Instruments product 
> 0x8442" rev 2.10/1.00 addr 2
> uhidev0 at uhub4 port 1 configuration 1 interface 0 "P.I. Engineering PC 
> Keyboard/Mouse to USB  Adapter" rev 1.10/3.10 addr 3
> uhidev0: iclass 3/1
> ukbd0 at uhidev0: 8 variable keys, 6 key codes
> wskbd1 at ukbd0 mux 1
> wskbd1: connecting to wsdisplay0
> uhidev1 at uhub4 port 1 configuration 1 interface 1 "P.I. Engineering PC 
> Keyboard/Mouse to USB  Adapter" rev 1.10/3.10 addr 3
> uhidev1: iclass 3/1
> ums0 at uhidev1: 5 buttons, Z dir
> wsmouse0 at ums0 mux 0
> uhidev2 at uhub4 port 2 configuration 1 interface 0 "Microsoft Microsoft 
> 3-Button Mouse with IntelliEye(TM)" rev 1.10/3.00 addr 4
> uhidev2: iclass 3/1
> ums1 at uhidev2: 3 buttons, Z dir
> wsmouse1 at ums1 mux 0
> uhidev3 at uhub4 port 3 configuration 1 interface 0 "Yubico Yubico Gnubby 
> (gnubby1)" rev 2.00/0.97 addr 5
> uhidev3: iclass 3/0
> fido0 at uhidev3: input=64, output=64, feature=0
> uhidev4 at uhub4 port 5 configuration 1 interface 0 "Texas Instruments 
> product 0x82ff" rev 2.01/1.00 addr 6
> uhidev4: iclass 3/0
> uhid0 at uhidev4: input=255, output=255, feature=2

Reply via email to