From: Alexander Duyck <alexander.h.duyck@redhat•com>
To: Julian Anastasov <ja@ssi•bg>
Cc: netdev@vger•kernel.org, davem@davemloft•net
Subject: Re: [net-next PATCH 2/4] fib_trie: Replace plen with slen in leaf_info
Date: Wed, 25 Feb 2015 13:30:44 -0800 [thread overview]
Message-ID: <54EE3F04.2000703@redhat.com> (raw)
In-Reply-To: <alpine.LFD.2.11.1502252158580.2970@ja.home.ssi.bg>
On 02/25/2015 01:15 PM, Julian Anastasov wrote:
> Hello,
>
> On Wed, 25 Feb 2015, Alexander Duyck wrote:
>
>> hlist_for_each_entry_rcu(li, &n->list, hlist) {
>> struct fib_alias *fa;
>>
>> - if ((key ^ n->key) & li->mask_plen)
>> + if (((key ^ n->key) >> li->slen) &&
>> + ((BITS_PER_LONG > KEYLENGTH) || (li->slen != KEYLENGTH)))
>> continue;
> The '(BITS_PER_LONG > KEYLENGTH) ||' part is not
> needed because on 64-bit processor we can still use
> 32-bit register (due to 32-bit t_key type) and to get
> undefined (!0) result from rshift with 32. We do not want
> to continue in this case. Is it really working on 64-bit for
> 0.0.0.0/0 ?
>
> Regards
>
> --
> Julian Anastasov <ja@ssi•bg>
It is working but that may be due to the fact that gcc decided to place
the key in a 64b register.
The last patch in the series probably does a better job of addressing
your concern. It replaces the shift with a comparison to (1ul <<
fa->fa_slen). In that case I believe the BITS_PER_LONG check would then
be appropriate would it not?
- Alex
next prev parent reply other threads:[~2015-02-25 21:30 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-02-25 19:05 [net-next PATCH 0/4] fib_trie: Remove leaf_info structure Alexander Duyck
2015-02-25 19:06 ` [net-next PATCH 1/4] fib_trie: Convert fib_alias to hlist from list Alexander Duyck
2015-02-25 19:06 ` [net-next PATCH 2/4] fib_trie: Replace plen with slen in leaf_info Alexander Duyck
2015-02-25 21:15 ` Julian Anastasov
2015-02-25 21:30 ` Alexander Duyck [this message]
2015-02-25 22:43 ` Julian Anastasov
2015-02-25 22:57 ` Alexander Duyck
2015-02-25 19:06 ` [net-next PATCH 3/4] fib_trie: Add slen to fib alias Alexander Duyck
2015-02-25 19:06 ` [net-next PATCH 4/4] fib_trie: Remove leaf_info Alexander Duyck
2015-02-25 22:29 ` Julian Anastasov
2015-02-25 23:09 ` Alexander Duyck
2015-02-26 0:06 ` Julian Anastasov
2015-02-26 0:16 ` Alexander Duyck
2015-02-27 22:06 ` [net-next PATCH 0/4] fib_trie: Remove leaf_info structure David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54EE3F04.2000703@redhat.com \
--to=alexander.h.duyck@redhat$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=ja@ssi$(echo .)bg \
--cc=netdev@vger$(echo .)kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox