[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20070731090159.GB12071@florz.florz.dyndns.org>
Date: Tue, 31 Jul 2007 11:01:59 +0200
From: Florian Zumbiehl <florz@...rz.de>
To: David Miller <davem@...emloft.net>
Cc: mostrows@...thlink.net, netdev@...r.kernel.org
Subject: Re: [RESEND][PATCH 1/3] PPPoE: improved hashing routine
Hi,
> > Erm, I'd say this not only produces different results than the old
> > version, but it also produces "wrong" results, in that it ignores quite
> > a bit of the data that's supposed to be hashed. If I didn't overlook
> > something, it only considers addr&0x0f0f0f0f0f00 and sid&0x0f0f, given
> > the right endianness of addr and that PPPOE_HASH_SIZE stays 16.
>
> You're right, I need to fix the shifts up. How does this version
> look?
>
> hash ^= (hash >> 4) ^ (hash >> 12) ^ (hash >> 20);
> return (head ^ (hash >> 8) ^ (hash >> 24)) &
> (PPPOE_HASH_SIZE - 1);
Assuming that it was supposed to read s/head/hash/: Same disclaimers
apply, but I'd say this considers only addr&0xff0fff0f000f and
sid&0x0fff, so, well, yes, it's better, but still not quite what I
think it should be ;-)
> Actually it might be simpler and more efficient to just make
> PPPOE_HASH_SHIFT be 8.
SHIFT? SIZE? BITS?
Florian
-
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