Opened 14 months ago

Closed 14 months ago

Last modified 13 months ago

#521 closed defect (fixed)

lsusb doesn't work in AppVMs

Reported by: joanna Owned by: joanna
Priority: major Milestone: Release 1
Component: core Keywords:
Cc:

Description

On both 3.0.4. and 3.2.7 I get the following:

[root@rflab user]# lsusb
unable to initialize libusb: -99

No matter whether there is, or there is no, USB controller assigned to the AppVM...

Interestingly a net or proxy VMs do not exhibit such behaviour...?!

Change History (4)

comment:1 Changed 14 months ago by joanna

Ok, this seems to be caused by the lack of ehci_hcd kernel module. When this module is unloaded in the usbvm, it displays the same error.

Now, the interesting part is, that in a normal AppVM (to which I assigned to USB controllers, exactly the same ones as I also assigned to my UsbVM) I get the following (always!):

[   30.560041] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[   30.560409] ehci_hcd 0000:00:00.0: device not available (can't reserve [mem 0xf162a000-0xf162a3ff])
[   30.560565] ehci_hcd 0000:00:01.0: device not available (can't reserve [mem 0xf1629000-0xf16293ff])

However, the very same USB controllers, always work fine when I assign them to the UsbVM! (Of course, I made sure to wait for one VM to shutdown correctly, and only then started another one).

What is the difference?

comment:2 Changed 14 months ago by joanna

Yes, I disabled memory balancing for the AppVM (it gets 800MB).

comment:3 Changed 14 months ago by joanna

  • Resolution set to fixed
  • Status changed from new to closed

Ok, solved it! The problem was that the AppVM had maxmem > mem -- and for PV domains with devices assined we need to ensure that maxmem = mem!

comment:4 Changed 13 months ago by marmarek

Hmm... USB devices (especially lsusb) works for me in AppVM with:

  • memory: 400 MB
  • maxmem: 2GB
  • as in default: enabled dynamic memory management (aka 'meminfo-writer')
  • 2 usb controllers assigned (1.1 and 2.0)
  • current memory: 530 MB
Note: See TracTickets for help on using tickets.