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
| ||
|
Message-ID: <87wp8y2v9t.fsf@weeman.i-did-not-set--mail-host-address--so-tickle-me> Date: Tue, 30 May 2017 11:56:30 -0400 From: Vivien Didelot <vivien.didelot@...oirfairelinux.com> To: David Miller <davem@...emloft.net>, andrew@...n.ch Cc: netdev@...r.kernel.org, linux-kernel@...r.kernel.org, kernel@...oirfairelinux.com, f.fainelli@...il.com Subject: Re: [PATCH net-next 1/7] net: dsa: hide dsa_uses_tagged_protocol code Hi Andrew, David, David Miller <davem@...emloft.net> writes: >>> +bool dsa_uses_tagged_protocol(struct dsa_switch_tree *dst) >>> +{ >>> + return !!dst->rcv; >>> +} >>> + >> >> You need to be careful here. This is in the hot path. Every frame >> received uses this code. And think about a distro kernel, which might >> have DSA enabled by default, yet is unlikely to have any switches. You >> are adding a function call which can be called millions of times per >> second.... > > Yeah, we really can't make this change. > > This isn't glibc where we're trying to hide the implementation of "FILE *" > behind accessor functions that caller can't see. We inline things when > performance dictates, and it does here. Thanks for the explanation, this wasn't obvious to me at all. So inline is mandatory here. Would a dereference like "!!dst->tag_ops->rcv" have an significant impact on performance? Thanks, Vivien
Powered by blists - more mailing lists