an0: device timeout on x31

Sepherosa Ziehau sepherosa at gmail.com
Sun May 18 03:33:46 PDT 2008


On Sun, May 18, 2008 at 6:26 PM, Sepherosa Ziehau <sepherosa at gmail.com> wrote:
> On Sun, May 18, 2008 at 6:22 PM, Sepherosa Ziehau <sepherosa at gmail.com> wrote:
>> On Sun, May 18, 2008 at 6:01 PM, Jost Tobias Springenberg
>> <jspringe at uos.de> wrote:
>>>
>>>> Do you mean even low rate traffic like ping?
>>>>
>>> Nope that works fine only if I try to transfer i.e. a tarball.
>>>
>>>> Things like:
>>>> - write to IO registers when device is not initialized yet or when
>>>> device is powered off
>>>> - write to IO registers that do not exist
>>>> - Initialize RX/TX ring related IO registers, before RX/TX ring is initialized.
>>>> - RX/TX ring is not correctly initialized
>>>> - buffer is (wrongly) freed/trashed when device is doing DMA
>>>
>>> What really strikes me is the following:
>>> I tried 12.1 release and HEAD without any changes, just as they are in the repos.
>>>
>>> On 12.1 livecd I get the errors that I wrote about in my first post,
>>> but no freezes at all, even if transferring files (although performance is horrible due to the massive timeouts).
>>>
>>> While using HEAD the system shows the same behavior but freezes after a few pings ...
>>>
>>> That suggests that the problem is not due to the changes I made but a more general bug !?
>>> What has changed in the network related areas since 12.1 ?
>>> May it be related to Sephes changes ?
>>
>> Maybe, can you break into DDB when freezing happens?
>
> Its a bug in the driver about how IFF_OACTIVE should be handled.  I
> will work out a fix.

Can you test following patch on HEAD:
http://leaf.dragonflybsd.org/~sephe/if_an_oactive.diff

Best Regards,
sephe

-- 
Live Free or Die





More information about the Bugs mailing list