Hi Rabhi,

The usbLibDevCfgDrGet can now really fail when querying device info on device capture. This is because the device being captured gets (soft-) re-plugged, so it really disappears and then appears back, and doing IOCTL_USB_GET_DESCRIPTOR_FROM_NODE_CONNECTION and thing like this could fail within this time slot. The problem is that since description of one and the same device could differ (depending on whether usbLibDevCfgDrGet fails or not), VBoxSVC may think it is two different devices. There is a logic in VBoxSVC that should prevent things like this, unfortunately it is hard to make it work 100% correct. I'll have another look into it t see if it can be improved to work properly once I have a spare minute.

Thanks,
Mikhail

On 10/14/2011 7:18 PM, Ribhi Kamal wrote:
For the issue in vboxsvc, it seems like its a locking issue. See attached log for more info.
Thanks,
Ribhi
On Thu, Oct 13, 2011 at 2:02 PM, Ribhi Kamal <[email protected] <mailto:[email protected]>> wrote:

    Alright, this is a very old problem that used to happens A LOT
    with the very first version of vbox that had usb support. The
    problem went a way for a while and now its back. It also happens
    in both my compiled and Oracle binaries.
    Here is what happens:
    The smart-card reader is inserted to the host and a virtual
    machine is running (nothing is captured yet)
    vboxmanage list usbhost, shows the smartcard device but without
    the Manufacturer and product strings.
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe list usbhost
    Host USB Devices:
    UUID:               7344ae78-9c6a-429f-a5d7-95838e6084e7

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    Current State:      Busy
    Next, when trying to attach the device:
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe controlvm testing
    usbattach {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe list usbhost
    Host USB Devices:
    UUID:               7344ae78-9c6a-429f-a5d7-95838e6084e7

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    Current State:      Captured
    UUID:               c78f6adb-5884-4bd2-8449-a06a892f0629

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Manufacturer:       Axalto
    Product:            Reflex USB v3
    Address:
    
\\?\usb#vid_80ee&pid_cafe#21120614404073#{00873fdf-cafe-80ee-aa5e-00c04fb1720b}
    Current State:      Held

    C:\Users\tester\Desktop\bin-new>VBoxManage.exe list usbhost
    Host USB Devices:
    UUID:               7344ae78-9c6a-429f-a5d7-95838e6084e7

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    Current State:      Captured
    UUID:               c78f6adb-5884-4bd2-8449-a06a892f0629

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Manufacturer:       Axalto
    Product:            Reflex USB v3
    Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    Current State:      Busy
    Now the description for the smartcard reader is visable and the
    capture will work.
    C:\Users\tester\Desktop\bin-new>
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe controlvm testing
    usbattach {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    VBoxManage.exe: error: USB device '<unknown>' with UUID
    {7344ae78-9c6a-429f-a5d7-95838e6084e7} is busy with a previous
    request. Please try again later
    VBoxManage.exe: error: Details: code E_INVALIDARG (0x80070057),
    component HostUSBDevice, interface IHostUSBDevice, callee IUnknown
    VBoxManage.exe: error: Context: "AttachUSBDevice(usbId.raw())" at
    line 832 of file VBoxManageControlVM.cpp
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe controlvm testing
    usbattach *c78f6adb-5884-4bd2-8449-a06a892f0629*
    C:\Users\tester\Desktop\bin-new>VBoxManage.exe list usbhost
    Host USB Devices:
    UUID:               7344ae78-9c6a-429f-a5d7-95838e6084e7

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
    Current State:      Captured
    UUID:               c78f6adb-5884-4bd2-8449-a06a892f0629

    VendorId:           0x04e6 (04E6)
    ProductId:          0x511c (511C)
    Revision:           5.24 (0524)
    Manufacturer:       Axalto
    Product:            Reflex USB v3
    Address:
    
\\?\usb#vid_80ee&pid_cafe#21120614404073#{00873fdf-cafe-80ee-aa5e-00c04fb1720b}
    Current State:      Captured

    C:\Users\tester\Desktop\bin-new>
    I'm not sure, but I think this problem was not in 4.1.2 and
    definitely not in 4.0.12.
    Thanks,
    Ribhi
    On Thu, Oct 13, 2011 at 12:12 PM, Ribhi Kamal <[email protected]
    <mailto:[email protected]>> wrote:

        More than often I see the following error when trying to
        capture the axalto smartcard reader:
        VBoxSVC.log
        VirtualBox (XP)COM Server 4.1.51_OSE r38834 win.amd64 (Oct 11
        2011 12:53:24) release log
        00:00:00.000 main     Log opened 2011-10-13T15:58:02.008196600Z
        00:00:00.000 main     OS Product: Windows 7
        00:00:00.000 main     OS Release: 6.1.7601
        00:00:00.000 main     Executable:
        C:\Users\tester\Desktop\bin-new\VBOXSVC.exe
        00:00:00.000 main     Process ID: 2152
        00:00:00.000 main     Package type: WINDOWS_64BITS_GENERIC (OSE)
        00:00:00.016          Loading settings file
        "C:\Users\tester/.VirtualBox\VirtualBox.xml" with version
        "1.12-windows"
        00:00:00.156          usbLibDevCfgDrGet: DeviceIoControl 1
        fail winEr (31)
        00:00:00.453          VDInit finished
        00:00:00.453          Loading settings file
        "C:\Users\tester\VirtualBox VMs\testing\testing.vbox" with
        version "1.11-windows"
        00:00:01.794 USBPROXY usbLibDevCfgDrGet: DeviceIoControl 1
        fail winEr (31)
        ------------------------------------------------------------
        After the capture the device will be left in the following state:
        C:\Users\tester\Desktop\bin-new>VBoxManage.exe list usbhost
        Host USB Devices:
        UUID:               717a5a0d-3510-4b9e-a5f5-2830de45ff3f
        VendorId:           0x04b9 (04B9)
        ProductId:          0x1000 (1000)
        Revision:           1.0 (0100)
        Manufacturer:       Rainbow Technologies
        Product:            iKey 1000
        Address:
        
\\?\usb#vid_80ee&pid_cafe#5&35ea7c2c&0&1#{00873fdf-cafe-80ee-aa5e-00c04fb1720b}
        Current State:      Captured
        UUID:               407b053e-0566-47de-b293-a81781524dbf
        VendorId:           0x04e6 (04E6)
        ProductId:          0x511c (511C)
        Revision:           5.24 (0524)
        Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0002
        _*Current State:      Captured*_
        UUID:               d027769c-8edb-4e12-a93e-56ff4e0614c6
        VendorId:           0x0b97 (0B97)
        ProductId:          0x7772 (7772)
        Revision:           1.16 (0116)
        Manufacturer:       O2
        Product:            O2Micro CCID SC Reader
        Address:            {50dd5230-ba8a-11d1-bf5d-0000f805f530}\0001
        Current State:      Busy
        There are two problems:
        1- The capture issue. (maybe retry usbLibDevCfgDrGet?)
        2- Handling the error is not done properly in vboxsvc(?) and
        the device is left the "Captured" state eventhough it is not.
        Please let me know how I can help.

        Thanks,
        -- Ribhi




-- -- Ribhi




--
-- Ribhi


_______________________________________________
vbox-dev mailing list
[email protected]
https://www.virtualbox.org/mailman/listinfo/vbox-dev

_______________________________________________
vbox-dev mailing list
[email protected]
https://www.virtualbox.org/mailman/listinfo/vbox-dev

Reply via email to