lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Fri, 2 Apr 2010 15:52:14 -0700 From: Stephen Hemminger <shemminger@...tta.com> To: Eric Dumazet <eric.dumazet@...il.com> Cc: Tom Herbert <therbert@...gle.com>, netdev@...r.kernel.org Subject: Re: Receive steering and hash and cache misses On Fri, 02 Apr 2010 21:36:31 +0200 Eric Dumazet <eric.dumazet@...il.com> wrote: > Le vendredi 02 avril 2010 à 11:54 -0700, Stephen Hemminger a écrit : > > On Fri, 2 Apr 2010 10:59:43 -0700 > > Tom Herbert <therbert@...gle.com> wrote: > > > > > On Fri, Apr 2, 2010 at 10:26 AM, Stephen Hemminger > > > <shemminger@...tta.com> wrote: > > > > > > > > Although Receive Packet Steering can use a hardware generated receive hash > > > > the device driver still causes an unnecessary cache miss on the interrupt > > > > processing CPU. The current Ethernet network device driver receive processing > > > > has the device driver calling eth_type_trans() which causes a the > > > > interrupt CPU to read the received frame header. > > > > > > > > > > It should be possible to deduce the values set by eth_type_trans from > > > the RX descriptor along with the RX hash. I'll post the patch getting > > > rxhash from bnx2x which does this. > > > > > > > On sky2, I get only RSS, Checksum, and length from descriptor info. > > Doesnt sky2 also provide vlan id (OP_RXVLAN/OP_RXCHKSVLAN) ? > > A future version of hardware could provide more info perhaps... I have only some information from Marvell and no idea what they might do with future hardware. > Must eth_type_trans() be done *before* netif_receive_skb() ? In current arch yes, because netif_receive_skb is used for multiple hardware types and the backlog queue could theoretically contain skb's of different hardware types. Also GRO works against RPS since it does lookup work on the initial CPU and dirties the skb. This is mostly theoretical at this point the bigger performance bottlenecks are farther down the packet processing chain. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists