panic: uhci_abort_xfer: not in process context (was Re: uplcom
/ ucom problems on RELENG_5)
Sebastien B
sebastien.b at swissinfo.org
Sat Apr 2 01:02:12 PST 2005
> > The
> > kernel panics with "ehci_abort_xfer: not in process context" a few while
> > after the transfer. Is it the same problem ? Is a software interrupt
> > handler unsuitable for the abort xfer function ? How can I fix it, by
> > using a task queue instead of a software interrupt handler ?
> > Regards,
> > Sebastien
>
> With the existing USB driver you cannot call usbd_abort_pipe() nor
> usbd_bulk_transfer(), from an interrupt context or callback, because those
> functions will sleep.
Does a software interrupt handler run in interrupt context ? And what about
task queue threads ?
Anyway, it doesn't crash while my software interrupt handler is running, but
later in the "usbtask" thread.
> You can call usbd_transfer(), if the transfer is not
> synchronous.
But it is. To send network packets, I must perform two USB transfers on two
different endpoints, and I must wait for the first one to complete before
initiating the second.
More information about the freebsd-usb
mailing list