https://bugs.dragonflybsd.org/https://bugs.dragonflybsd.org/favicon.ico?16293952082009-09-07T09:18:05ZDragonFlyBSD bugtrackerDragonFlyBSD - Bug #1488: panic: ohci_abort_xfer: not in process contexthttps://bugs.dragonflybsd.org/issues/1488?journal_id=73082009-09-07T09:18:05Zdillon
<ul></ul><p>:Inserted an usb flash drive into the usb port and started a dd of=/dev/da8<br />:(tried to dd a dfly usb image onto the flash drive). After a second of<br />:activity on the flash drive, dd got stuck in physstr state and the whole usb<br />:stack seemed to be blocked (had a usb mouse plugged in which stopped<br />:responding). After playing around a bit I disconnected a tip(1) session on</p>
<pre><code>This has happened to me.</code></pre>
<p>:ucom0 (have an usb->serial converter so that I can abuse the serial console on<br />:another machine) and a panic occured.<br />:Note: I'm not sure but during the playing around I think I also tried<br />:kldloading ehci to see if anything happened.</p>
<pre><code>I looked at your kernel core. The two problems are related. The USB<br /> interrupt is trying to allocate memory from its interrupt and is stuck<br /> in contigmalloc(). That leaves the interrupt count bumped and<br /> caused the assertion when you disconnected from the tip session.</code></pre>
<pre><code>Basically folks we need to significantly rewrite the usb driver.<br /> I'll see if I can at least get the memory allocations out of<br /> the interrupt code at least, that might help matters.</code></pre>
<pre><code>-Matt</code></pre> DragonFlyBSD - Bug #1488: panic: ohci_abort_xfer: not in process contexthttps://bugs.dragonflybsd.org/issues/1488?journal_id=113512013-03-10T11:38:36Ztuxillo
<ul><li><strong>Description</strong> updated (<a title="View differences" href="/journals/11351/diff?detail_id=894">diff</a>)</li><li><strong>Status</strong> changed from <i>New</i> to <i>Closed</i></li><li><strong>Assignee</strong> deleted (<del><i>0</i></del>)</li></ul><p>Hi,</p>
<p>Closing this because of two reasons:</p>
<p>1. contigmalloc() was reworked not long ago (<a class="external" href="http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/79d182b0d3dee841326d364c0e92e46c405765e6">http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/79d182b0d3dee841326d364c0e92e46c405765e6</a>)<br />2. USB4BSD is here, we're towards it.</p>
<p>Best regards,<br />Antonio Huete</p>