Reporting Bugs - cezanne/usbip-win GitHub Wiki
usbip-win is not yet ready for production use. Your issue will be resolved with more detailed logs such as kernel and forwarder logs.
How to get windows kernel log for vhci(wdm)
- Set registry key to enable a debug filter
- usbip-win uses DbgPrintEx API for kernel logging.
- save following as .reg and run or manually insert a registry key
- restart is required
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Debug Print Filter]
"IHVDRIVER"=dword:ffffffff
-
Run a debugging log viewer program before you test
- DebugView is a good tool to view the logs
-
If your testing machine suffer from BSOD (blue screen on death), you should get it via remote debugging.
- WinDbg on virtual machines would be good to get logs
How to get windows kernel log for vhci(ude)
- A new vhci(ude) implementation uses WPP SW tracing instead of DbgPrintEx.
- DebugView.exe cannot catch a vhci debug message
- TraceView.exe is a good utility for a new approach, which is included in WDK.
- DebugView.exe cannot catch a vhci debug message
- usbip_vhci_ude.pdb file is required to add a trace provider easily.
- Create a new session log in TraceView.exe
- Choose PDB file radio button in "Provider Control GUID Setup" popup dialog
- Specify usbip_vhci_ude.pdb as a PDB file
- You can send real-time trace messages to WinDbg by modifying in "Advanced Log Session Options".
- If your testing machine suffer from BSOD (blue screen on death), you should get it via remote debugging.
- WinDbg on virtual machines would be good to get logs
How to get usbip forwarder log
- usbip-win transmits usbip packets via a userland forwarder.
- forwarder log is the best to look into usbip packet internals.
- edit
usbip_forward.c
to defineDEBUG_PDU
at the head of the file - compile
usbip.exe
orusbipd.exe
debug_pdu.log
is created at the path where an executable runs.
How to get linux kernel log
- Sometimes linux kernel log is required