2020-07-22 12:56:12

by Johannes Berg

[permalink] [raw]
Subject: Re: [RFC 2/7] ath10k: Add support to process rx packet in thread

On Wed, 2020-07-22 at 14:27 +0200, Felix Fietkau wrote:

> I'm considering testing a different approach (with mt76 initially):
> - Add a mac80211 rx function that puts processed skbs into a list
> instead of handing them to the network stack directly.

Would this be *after* all the mac80211 processing, i.e. in place of the
rx-up-to-stack?

johannes


2020-07-22 13:01:39

by Felix Fietkau

[permalink] [raw]
Subject: Re: [RFC 2/7] ath10k: Add support to process rx packet in thread

On 2020-07-22 14:55, Johannes Berg wrote:
> On Wed, 2020-07-22 at 14:27 +0200, Felix Fietkau wrote:
>
>> I'm considering testing a different approach (with mt76 initially):
>> - Add a mac80211 rx function that puts processed skbs into a list
>> instead of handing them to the network stack directly.
>
> Would this be *after* all the mac80211 processing, i.e. in place of the
> rx-up-to-stack?
Yes, it would run all the rx handlers normally and then put the
resulting skbs into a list instead of calling netif_receive_skb or
napi_gro_frags.

- Felix

2020-07-23 06:12:18

by Rajkumar Manoharan

[permalink] [raw]
Subject: Re: [RFC 2/7] ath10k: Add support to process rx packet in thread

On 2020-07-22 06:00, Felix Fietkau wrote:
> On 2020-07-22 14:55, Johannes Berg wrote:
>> On Wed, 2020-07-22 at 14:27 +0200, Felix Fietkau wrote:
>>
>>> I'm considering testing a different approach (with mt76 initially):
>>> - Add a mac80211 rx function that puts processed skbs into a list
>>> instead of handing them to the network stack directly.
>>
>> Would this be *after* all the mac80211 processing, i.e. in place of
>> the
>> rx-up-to-stack?
> Yes, it would run all the rx handlers normally and then put the
> resulting skbs into a list instead of calling netif_receive_skb or
> napi_gro_frags.
>
Felix,

This seems like split & batch processing. In past (ath9k), we observed
some
behavioral differences between netif_rx and netif_receive_skb. The
intermediate
queue in netif_rx changed not just performance but also time sensitive
application
data. Agree that wireless stack processing might be heavier than
ethernet packet
processing. If the hardware supports rx decap offload, NAPI processing
shouldn't be
an issue. right?

-Rajkumar