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, 22 Jun 2012 17:15:09 -0700 (PDT) From: David Miller <davem@...emloft.net> To: alexander.h.duyck@...el.com Cc: netdev@...r.kernel.org, jeffrey.t.kirsher@...el.com, edumazet@...gle.com Subject: Re: [PATCH] ipv4: Add sysctl knob to control early socket demux From: Alexander Duyck <alexander.h.duyck@...el.com> Date: Thu, 21 Jun 2012 16:58:31 -0700 > This change is meant to add a control for disabling early socket demux. > The main motivation behind this patch is to provide an option to disable > the feature as it adds an additional cost to routing that reduces overall > throughput by up to 5%. For example one of my systems went from 12.1Mpps > to 11.6 after the early socket demux was added. It looks like the reason > for the regression is that we are now having to perform two lookups, first > the one for an established socket, and then the one for the routing table. > > By adding this patch and toggling the value for ip_early_demux to 0 I am > able to get back to the 12.1Mpps I was previously seeing. > > Cc: David S. Miller <davem@...emloft.net> > Cc: Eric Dumazet <edumazet@...gle.com> > Signed-off-by: Alexander Duyck <alexander.h.duyck@...el.com> I applied this for now, making a minor change to move the local variables down into the new basic block you created. There has got to be a way to make this really cheap. At the very least we can have the GRO code store away the ports and therefore allow us to just do a direct call to try and demux the socket. Thus, we'd avoid all of pskb_may_pull() et al. packet validations, and packet header pointer calculations. Furthermore, we can reduce to overhead by making a special inet established hash demux that doesn't check for time-wait sockets, reducing the number of probes to 1 from 2. -- 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