TraceView etl log analysis

Hi,

I am new to the USB driver development/analysis, I have extracted the etl logs and below are the TraceView logs

00000152 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Set instance ID: 858508856766, unique: 1
00000153 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Set text description, language: 0x409, device: XYZ_Android, location: Port_#0001.Hub_#0025
00000154 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Registered IO internal control preprocessor for manual rejection, PlugNo: 5
00000155 vmusb 4 772 0 0 02\07\2019-06:49:46:231 WdfDeviceAddQueryInterface succeed, status: 0x0
00000156 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Using a power managed queue, PlugNo: 5
00000157 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Unknown( 24): GUID=51526c19-3dac-91c5-c442-f657fec1726a (No Format Information found).
00000158 vmusb 4 772 0 0 02\07\2019-06:49:46:231 Unsupported interface type (passing onto framework), GUID: b8e992ec-a797-4dc4-884684d041707446, version: 1

To my understanding it looks like, windows driver (from system process ID 4) is giving the call to my driver, however it seems like the interface is not implemented in our driver.

Could someone please provide more info on this.
Any help would be much appreciable.

Thanks,
Sumit

It’s possible. That’s not a GUID I recognize, and it doesn’t seem to occur in the WDK. Is that from your INF file? It looks like you just called WdfDeviceAddQueryInterface. Was it for this interface?

You are not required to support every interface ever made. Sometimes, a client will just check to see if you support an interface. Is there some problem with your driver?

Hi Tim,

Thanks for your response.

It is not from the INF file, let me give you more context about this:
these logs are captured when the USB device was plugged in, but it seems to be not working, so from the device manager when I was trying to install the drivers, getting the error code 28.

With the above context, could you please suggest something.
Thanks,
Sumit

On Feb 16, 2019, at 2:14 AM, Sumit wrote:
>
> It is not from the INF file, let me give you more context about this:
>
> these logs are captured when the USB device was plugged in, but it seems to be not working, so from the device manager when I was trying to install the drivers, getting the error code 28.

Well, I’m confused. Error code 28 says “drivers for this device are not installed”, but if it didn’t find a driver, why are there messages in the log from your driver? How, EXACTLY, did you install the driver? Is it possible you used “devcon install”? Because that is exactly the wrong choice for a PnP device. It creates a FAKE device with the ID you specified, and then loads a driver for it.

Is this a USB device? What is the VID and PID? What does your INF look like?

Tim Roberts, timr@probo.com
Providenza & Boekelheide, Inc.

Hi Tim,
Apologies, I gave you half the information, here actually we a redirecting the USB device and in the other machine we are creating a virtual USB device.

I am putting the logs again
on callback EVT_WDF_CHILD_LIST_CREATE_DEVICE all these logs are coming from our driver.
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF&SubClass_FF&Prot_00
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF&SubClass_FF
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set instance ID: 858508856766, unique: 1
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set text description, language: 0x409, device: Android, location: Port#0001.Hub_#0025
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Registered IO internal control preprocessor for manual rejection, PlugNo: 5
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]WdfDeviceAddQueryInterface succeed, status: 0x0
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Using a power managed queue, PlugNo: 5
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Create usb device succeeded, status: 0x0 device: 00001A7A02583E68 deviceExt: FFFFE585FDA7C480

** The below interface is not implemented, could this be the reason of failure?
it comes with the callback EVT_WDFDEVICE_WDM_IRP_PREPROCESS
**The interface is this GUID_PNP_EXTENDED_ADDRESS_INTERFACE, i am not seeing this in the older version of the winddk.
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Unsupported interface type (passing onto framework), GUID: b8e992ec-a797-4dc4-884684d041707446, version: 1

**This call comes from our user mode process. **
[1]08A8.15A0::02/07/2019-06:49:46.232 [vmusb]Plugin device succeeded, PlugNo: 5

[0]0004.0304::02/07/2019-06:49:46.234 [vmusb]Unsupported interface type (passing onto framework), GUID: 70211b0e-0afb-47db-afc1410bf842497a, version: 1

Here also some of the interfaces which are not implemented, are these the reason of failure? Where as with the other device i am not seeing these logs.
[0]0004.0304::02/07/2019-06:49:46.234 [vmusb]Unsupported interface type (passing onto framework), GUID: 1efee0b2-d278-4ae4-bddc1b34dd648043, version: 1
Unknown( 19): GUID=f1893825-afe6-231d-1222-989e06321c13 (No Format Information found).
Unknown( 21): GUID=f1893825-afe6-231d-1222-989e06321c13 (No Format Information found).
VID - PID: 0482 - 0A73
I am not using the INF file for installation, as i am seeing the device in the other machine trying to install the device from device manager and the seeing the error code 28.

Thanks,
Sumit

Hi Tim,

Apologies, i have provided half of the information, here actually we are redirecting the device to another machine.

Putting the logs again with queries.

Below logs are coming from our driver
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF&SubClass_FF&Prot_00
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF&SubClass_FF
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set compatible ID: USB\Class_FF
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set instance ID: 858508856766, unique: 1
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Set text description, language: 0x409, device: Android, location: Port#0001.Hub_#0025
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Registered IO internal control preprocessor for manual rejection, PlugNo: 5
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]WdfDeviceAddQueryInterface succeed, status: 0x0
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Using a power managed queue, PlugNo: 5
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Create usb device succeeded, status: 0x0 device: 00001A7A02583E68 deviceExt: FFFFE585FDA7C480
this is the interface ( GUID_PNP_EXTENDED_ADDRESS_INTERFACE) which is not implemented, and comes with the callback EVT_WDFDEVICE_WDM_IRP_PREPROCESS, Could this be the reason of failure, as i am seeing this interface is not present in the lower version of WINDDK.
[0]0004.0304::02/07/2019-06:49:46.231 [vmusb]Unsupported interface type (passing onto framework), GUID: b8e992ec-a797-4dc4-884684d041707446, version: 1
This comes from our user mode process
[1]08A8.15A0::02/07/2019-06:49:46.232 [vmusb]Plugin device succeeded, PlugNo: 5
[0]0004.0304::02/07/2019-06:49:46.234 [vmusb]Unsupported interface type (passing onto framework), GUID: 70211b0e-0afb-47db-afc1410bf842497a, version: 1
Below interfaces are also not implemented and not seeing these logs with other device which is working fine.
[0]0004.0304::02/07/2019-06:49:46.234 [vmusb]Unsupported interface type (passing onto framework), GUID: 1efee0b2-d278-4ae4-bddc1b34dd648043, version: 1
Unknown( 19): GUID=f1893825-afe6-231d-1222-989e06321c13 (No Format Information found).
Unknown( 21): GUID=f1893825-afe6-231d-1222-989e06321c13 (No Format Information found).
VID- PID 0482- 0A73
I am not using the INF file for installation, however as the USB is redirected, and available in other machine then trying to install the driver from device manager.

Thanks,
Sumit