VirtualBox

Ignore:
Timestamp:
Sep 24, 2019 8:20:17 AM (6 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
133551
Message:

USB/win: Updated logging for better diagnostics.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/HostDrivers/VBoxUSB/win/lib/VBoxUsbLib-win.cpp

    r80877 r80964  
    114114
    115115
    116 int usbLibVuDeviceValidate(PVBOXUSB_DEV pVuDev)
    117 {
    118     HANDLE hOut = INVALID_HANDLE_VALUE;
     116static int usbLibVuDeviceValidate(PVBOXUSB_DEV pVuDev)
     117{
     118    HANDLE  hOut = INVALID_HANDLE_VALUE;
     119    DWORD   dwErr;
    119120
    120121    hOut = CreateFile(pVuDev->szName, GENERIC_READ | GENERIC_WRITE, FILE_SHARE_WRITE | FILE_SHARE_READ, NULL,
     
    123124    if (hOut == INVALID_HANDLE_VALUE)
    124125    {
    125         DWORD dwErr = GetLastError(); NOREF(dwErr);
     126        dwErr = GetLastError();
    126127        AssertMsgFailed(("CreateFile FAILED to open %s, dwErr (%d)\n", pVuDev->szName, dwErr));
     128        LogRelFunc(("Failed to open `%s' (dwErr=%d)!\n", pVuDev->szName, dwErr));
    127129        return VERR_GENERAL_FAILURE;
    128130    }
     
    136138        if (!DeviceIoControl(hOut, SUPUSB_IOCTL_GET_VERSION, NULL, 0,&version, sizeof(version),  &cbReturned, NULL))
    137139        {
    138             AssertMsgFailed(("DeviceIoControl SUPUSB_IOCTL_GET_VERSION failed with LastError=%Rwa\n", GetLastError()));
     140            dwErr = GetLastError();
     141            AssertMsgFailed(("DeviceIoControl SUPUSB_IOCTL_GET_VERSION failed with LastError=%Rwa\n", dwErr));
     142            LogRelFunc(("SUPUSB_IOCTL_GET_VERSION failed on `%s' (dwErr=%d)!\n", pVuDev->szName, dwErr));
    139143            break;
    140144        }
     
    147151        {
    148152            AssertMsgFailed(("Invalid version %d:%d vs %d:%d\n", version.u32Major, version.u32Minor, USBDRV_MAJOR_VERSION, USBDRV_MINOR_VERSION));
     153            LogRelFunc(("Invalid version %d:%d (%s) vs %d:%d (library)!\n", version.u32Major, version.u32Minor, pVuDev->szName, USBDRV_MAJOR_VERSION, USBDRV_MINOR_VERSION));
    149154            break;
    150155        }
     
    152157        if (!DeviceIoControl(hOut, SUPUSB_IOCTL_IS_OPERATIONAL, NULL, 0, NULL, NULL, &cbReturned, NULL))
    153158        {
    154             AssertMsgFailed(("DeviceIoControl SUPUSB_IOCTL_IS_OPERATIONAL failed with LastError=%Rwa\n", GetLastError()));
     159            dwErr = GetLastError();
     160            AssertMsgFailed(("DeviceIoControl SUPUSB_IOCTL_IS_OPERATIONAL failed with LastError=%Rwa\n", dwErr));
     161            LogRelFunc(("SUPUSB_IOCTL_IS_OPERATIONAL failed on `%s' (dwErr=%d)!\n", pVuDev->szName, dwErr));
    155162            break;
    156163        }
     
    217224
    218225        rc = usbLibVuDeviceValidate(pVuDev);
     226        LogRelFunc(("Found VBoxUSB on `%s' (rc=%d)\n", pVuDev->szName, rc));
    219227        AssertRC(rc);
    220228    } while (0);
     
    13181326            if (!DeviceIoControl(hDev, SUPUSB_IOCTL_GET_DEVICE, &Dev, sizeof (Dev), &Dev, sizeof (Dev), &cbReturned, NULL))
    13191327            {
     1328                DWORD dwErr = GetLastError();
    13201329#ifdef VBOX_WITH_ANNOYING_USB_ASSERTIONS
    1321                  DWORD dwErr = GetLastError(); NOREF(dwErr);
    13221330                 /* ERROR_DEVICE_NOT_CONNECTED -> device was removed just now */
    13231331                 AssertMsg(dwErr == ERROR_DEVICE_NOT_CONNECTED, (__FUNCTION__": DeviceIoControl failed dwErr (%d)\n", dwErr));
    13241332#endif
    1325                  Log(("SUPUSB_IOCTL_GET_DEVICE: DeviceIoControl no longer connected\n"));
     1333                LogRelFunc(("SUPUSB_IOCTL_GET_DEVICE failed on '%s' (dwErr=%u)!\n", pDevInfos->szName, dwErr));
    13261334                 CloseHandle(hDev);
    13271335                 break;
     
    13351343            if (!DeviceIoControl(pGlobal->hMonitor, SUPUSBFLT_IOCTL_GET_DEVICE, &hDevice, sizeof (hDevice), &MonInfo, sizeof (MonInfo), &cbReturned, NULL))
    13361344            {
    1337                  DWORD dwErr = GetLastError(); NOREF(dwErr);
     1345                 DWORD dwErr = GetLastError();
    13381346                 /* ERROR_DEVICE_NOT_CONNECTED -> device was removed just now */
    13391347                 AssertMsgFailed(("Monitor DeviceIoControl failed dwErr (%d)\n", dwErr));
    1340                  Log(("SUPUSBFLT_IOCTL_GET_DEVICE: DeviceIoControl no longer connected\n"));
     1348                LogRelFunc(("SUPUSBFLT_IOCTL_GET_DEVICE failed for '%s' (hDevice=%p, dwErr=%u)!\n", pDevInfos->szName, hDevice, dwErr));
    13411349                 CloseHandle(hDev);
    13421350                 break;
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette