if_awg fixes
Guy Yur
guyyur at gmail.com
Fri Sep 29 00:56:51 UTC 2017
On 28 September 2017 at 22:13, Emmanuel Vadot <manu at bidouilliste.com> wrote:
> On 2017-09-28 21:10, Guy Yur wrote:
>>
>> Hi,
>>
>> I created a phabricator account and four diffs.
>>
>> https://reviews.freebsd.org/D12535
>> https://reviews.freebsd.org/D12536
>> https://reviews.freebsd.org/D12537
>> https://reviews.freebsd.org/D12538
>>
>> ...
>>
>> Thanks,
>> Guy
>
>
> Thanks a lot, I will not have time to look at them before next week. Will
> probably look at them on monday.
>
>
> --
> Emmanuel Vadot <manu at bidouilliste.com> <manu at freebsd.org>
Thanks.
I updated D12537.
It appears that tx interrupt should only be requested on the
last segment otherwise the card won't issue it.
In a scenario where every 64th frame is not the last segment of
a frame there will never be a tx interrupt triggered.
My changes included only doing tx drain on TX_INT while
original code also drains on TX_BUF_UA_INT.
So no TX_INTs issued lead to full queue never clearing.
Without my changes tx queue won't be stuck but drain will need to
run on the full queue in the above scenario not just the last 64 buffers.
if_vr has the same behavior of setting the flag only on last segment.
Seems stable so far with ssh on constant output loop.
Also added review for draining tx buffers and clearing rx buffers on stop.
https://reviews.freebsd.org/D12539
-- Guy
More information about the freebsd-arm
mailing list