After hours and hours of troubleshooting, I realize that that was my problem. I needed no-strict-reset because of FLR. I have no idea what FLR is.
Bus 001 Device 006: ID 148f:3070 Ralink Technology, Corp. RT2870/RT3070 Wireless Adapter
I guess thats my card. One of those RT numbers.
Anyway. I have a few questions.
Question 1: Should I fix my wireless card with a car or a hammer?
Question 2: What kind of wireless card should I buy or what should I be on the lookout for to make sure its compatible with qubes? (long range for bonus pts!)
Question 3: What kind of security am I forfeiting when I use this frothy no-strict-reset card?
Question 4: Is there anything I can do for my card? Heres the error output:
I think one of these 1st two sections is the output when the VM is already started and I attach the device and the other is when I start it with the device already attached. Or maybe not. It could the the before and after of
dom0$ qvm-prefs -s netvm kernelopts "iommu=soft swiotlb=16384" Who knows.... Not me, I mean.
dom0 lvm[923]: Monitoring thin pool qubes_dom0-pool00-tpool.
dom0 qubesd[9781]: b' WARNING: Sum of all thin volume sizes (328.68 GiB) exceeds the size of thin pool qubes_dom0/pool00 and the size of whole volume group (166.68 GiB)!\n'
dom0 dmeventd[923]: No longer monitoring thin pool qubes_dom0-pool00-tpool.
dom0 lvm[923]: Monitoring thin pool qubes_dom0-pool00-tpool.
dom0 qubesd[9781]: b' WARNING: Sum of all thin volume sizes (338.68 GiB) exceeds the size of thin pool qubes_dom0/pool00 and the size of whole volume group (166.68 GiB)!\n'
dom0 libvirtd[9825]: 2018-03-08 05:27:18.209+0000: 9861: error : virPCIDeviceReset:1002 : internal error: Unable to reset PCI device 0000:00:14.0: no FLR, PM reset or bus reset available
dom0 qubesd[9781]: Start failed: internal error: Unable to reset PCI device 0000:00:14.0: no FLR, PM reset or bus reset available
dom0 dmeventd[923]: No longer monitoring thin pool qubes_dom0-pool00-tpool.
dom0 lvm[923]: Monitoring thin pool qubes_dom0-pool00-tpool.
dom0 qubesd[9781]: b' WARNING: Sum of all thin volume sizes (328.68 GiB) exceeds the size of thin pool qubes_dom0/pool00 and the size of whole volume group (166.68 GiB)!\n'
dom0 dmeventd[923]: No longer monitoring thin pool qubes_dom0-pool00-tpool.
dom0 lvm[923]: Monitoring thin pool qubes_dom0-pool00-tpool.
dom0 qubesd[9781]: b' WARNING: Sum of all thin volume sizes (338.68 GiB) exceeds the size of thin pool qubes_dom0/pool00 and the size of whole volume group (166.68 GiB)!\n'
dom0 libvirtd[9825]: 2018-03-08 05:27:18.209+0000: 9861: error : virPCIDeviceReset:1002 : internal error: Unable to reset PCI device 0000:00:14.0: no FLR, PM reset or bus reset available
dom0 qubesd[9781]: Start failed: internal error: Unable to reset PCI device 0000:00:14.0: no FLR, PM reset or bus reset available
dom0 dmeventd[923]: No longer monitoring thin pool qubes_dom0-pool00-tpool.
This was definitely during attach while VM running:
ERROR: Devices tab: Got empty response from qubesd. see journalctl in dom0 for details.
followed by:
dmesg:
[ 122.885838] xhci_hcd 0000:00:14.0: USB bus 2 deregistered
[ 122.889909] xhci_hcd 0000:00:14.0: remove, state 1
[ 122.889917] usb usb1: USB disconnect, device number 1
[ 122.889918] usb 1-5: USB disconnect, device number 2
[ 122.982262] usb 1-6: USB disconnect, device number 3
[ 122.982600] usb 1-7: USB disconnect, device number 4
[ 122.984305] xhci_hcd 0000:00:14.0: USB bus 1 deregistered
[ 122.984842] kauditd_printk_skb: 5 callbacks suppressed
[ 122.984843] audit: type=1130 audit(1520492985.409:136): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-rfkill comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[ 122.989660] pciback 0000:00:14.0: seizing device
I think what you need to do here is merge the sys-net with your sys-usb. I'm not 100% sure since I don't use usb-modems my self on Qubes, but with an USB modem, you're probably supposed to keep that USB controller in sys-net AppVM. You could also alternatively install the Qubes VM network management tools in sys-usb, but that might cause undeeded complexities. It might just be easier to move your USB controller to the sys-net AppVM.
If you got multiple USB controllers, then you can keep one USB controller in sys-net, and the other(s) in your sys-usb on the safe side of the firewall. Unfortunately you'll have to keep at least one USB controller in sys-net, or an VM like it. Careful not to try to enable USB modems on the wrong side of the firewall btw.
Definitely never try get usb-modems working if your USB controller is still in dom0 though, if you get that working, then you're exposing all of dom0 to the internet directly.