Re: call if_input only once per Rx interrupt from net80211

2019-09-11 Thread Stefan Sperling
On Tue, Sep 10, 2019 at 10:35:34PM +0200, Matthias Schmidt wrote: > Hi Stefan, > > * Stefan Sperling wrote: > > > > I think I see why. I forgot to convert some existing ieee80211_input() > > calls to ieee80211_inputm(), in ieee80211_input.c. > > These calls are related to buffered aggregated fram

Re: call if_input only once per Rx interrupt from net80211

2019-09-10 Thread Matthias Schmidt
Hi Stefan, * Stefan Sperling wrote: > > I think I see why. I forgot to convert some existing ieee80211_input() > calls to ieee80211_inputm(), in ieee80211_input.c. > These calls are related to buffered aggregated frames, so aggregated > frames triggered multiple if_input() calls per interrupt aga

Re: call if_input only once per Rx interrupt from net80211

2019-09-10 Thread Stefan Sperling
On Tue, Sep 10, 2019 at 07:08:14PM +0200, Matthias Schmidt wrote: > Hi Stefan, > > * Stefan Sperling wrote: > > > > New diff with above changes: > > I tested your new diff with two different systems: > > * Thinkpad T450s with iwm (8265, same as yesterday) > * Thinkpad X220 with iwn (6205) > >

Re: call if_input only once per Rx interrupt from net80211

2019-09-10 Thread Matthias Schmidt
Hi Stefan, * Stefan Sperling wrote: > > New diff with above changes: I tested your new diff with two different systems: * Thinkpad T450s with iwm (8265, same as yesterday) * Thinkpad X220 with iwn (6205) and on both systems I see a drastic regression compared to yesterday's patch. The downloa

Re: call if_input only once per Rx interrupt from net80211

2019-09-10 Thread Stefan Sperling
On Mon, Sep 09, 2019 at 06:17:34PM -0300, Martin Pieuchot wrote: > On 09/09/19(Mon) 16:37, Stefan Sperling wrote: > > On Mon, Sep 09, 2019 at 03:10:04PM +0200, Stefan Sperling wrote: > > > The wifi stack currently calls if_input once per packet instead of once > > > per interrupt. To make the wifi

Re: call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Martin Pieuchot
On 09/09/19(Mon) 16:37, Stefan Sperling wrote: > On Mon, Sep 09, 2019 at 03:10:04PM +0200, Stefan Sperling wrote: > > The wifi stack currently calls if_input once per packet instead of once > > per interrupt. To make the wifi layer play nicely with the network stack > > we can split ieee80211_input

Re: call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Matthias Schmidt
Hi Stefan, * Stefan Sperling wrote: > On Mon, Sep 09, 2019 at 03:10:04PM +0200, Stefan Sperling wrote: > > The wifi stack currently calls if_input once per packet instead of once > > per interrupt. To make the wifi layer play nicely with the network stack > > we can split ieee80211_input() into tw

Re: call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Björn Ketelaars
On Mon 09/09/2019 16:37, Stefan Sperling wrote: > On Mon, Sep 09, 2019 at 03:10:04PM +0200, Stefan Sperling wrote: > > The wifi stack currently calls if_input once per packet instead of once > > per interrupt. To make the wifi layer play nicely with the network stack > > we can split ieee80211_inpu

Re: call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Florian Obser
this seems to work fine on iwm0 at pci2 dev 0 function 0 "Intel Dual Band Wireless AC 7260" rev 0x83, msi download is considerably less wobbly, upload also benefits a bit(?): before: [florian@x1:~]$ tcpbench -t 10 192.168.178.73 elapsed_ms bytes mbps bwidth 1001

Re: call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Stefan Sperling
On Mon, Sep 09, 2019 at 03:10:04PM +0200, Stefan Sperling wrote: > The wifi stack currently calls if_input once per packet instead of once > per interrupt. To make the wifi layer play nicely with the network stack > we can split ieee80211_input() into two parts: Updated diff which avoids purging t

call if_input only once per Rx interrupt from net80211

2019-09-09 Thread Stefan Sperling
robert@ noticed that iwm(4) Rx throughput increased after running: sysctl net.link.ifrxq.pressure_drop=32 The default value for this sysctl is 8. dlg@ explained the problem to me: [[[ the pressure stuff counts the number of times ifiq_input (which is called from if_input) gets called befor