Hi,
Using HyperTerminal as app accessing a USB Virtual Serial Port - yank the device and CPU usage goes -> 100%; problem is that UMDF is completing IOCTL_SERIAL_WAIT_ON_MASK and IRP_MJ_READ requests with STATUS_CANCELLED (my driver doesn’t even seem to see the requests); HyperTerminal then promptly issues another request and round we go (until port is closed).
Any ideas???
Thanks
> Hi,
Using HyperTerminal as app accessing a USB Virtual Serial Port - yank
the
device and CPU usage goes -> 100%; problem is that UMDF is completing
IOCTL_SERIAL_WAIT_ON_MASK and IRP_MJ_READ requests with
STATUS_CANCELLED (my
driver doesn’t even seem to see the requests); HyperTerminal then
promptly
issues another request and round we go (until port is closed).
Any ideas???
Search the archives - lots of stuff recently on UMDF and serial ports.
Also, hyperterminal is the biggest piece of crap ever written. Running
at 100% CPU is just what it does, even with real 16550 UART serial
ports.
James
Adrian Sheard wrote:
Using HyperTerminal as app accessing a USB Virtual Serial Port -
yank the device and CPU usage goes -> 100%; problem is that
UMDF is completing IOCTL_SERIAL_WAIT_ON_MASK and
IRP_MJ_READ requests with STATUS_CANCELLED (my driver
doesn’t even seem to see the requests); HyperTerminal then
promptly issues another request and round we go (until port
is closed).
As stated recently, it’s not possible to make a standards-conforming serial port in UMDF. There are other issues besides the one you’re facing, but this may be yet another. If the reflector is completing the I/O in a loop and not even passing it to you, you’re probably out of luck.
With regards to James’ comment, I don’t hit 100% CPU when I pull my USB modem device in Hyperterminal.