[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4AE1E07C.5030502@gmail.com>
Date: Fri, 23 Oct 2009 18:57:32 +0200
From: Eric Dumazet <eric.dumazet@...il.com>
To: Lucian Adrian Grijincu <lgrijincu@...acom.com>
CC: opurdila@...acom.com, netdev@...r.kernel.org
Subject: Re: udp: break from the lookup when hitting the maximum score value
Lucian Adrian Grijincu a écrit :
> Before udp hashes were converted to rcu in
> udp: introduce struct udp_table and multiple spinlocks
> 645ca708f936b2fbeb79e52d7823e3eb2c0905f8
> we stopped searching in list upon hitting the maximum score value (which is
> 9).
>
> This got removed in the conversion to rcu.
> I'm not sure whether this was intentional or it just slipped by.
>
> As far as I understand it this does not interfere with the lockless rcu: there
> is another score check the result will have to pass and if it doesn't have a
> score of 9 (which will be the value of badness) we'll just restart the lookup.
>
> Even if the node was deleted from the chain and reclaimed at a later time, if
> at the second score test we have value 9 again, we can still return with this
> result.
>
> Am I missing something?
>
>
This was intentional.
This never happens in practice and slowdown lookups.
(To reach score 9, your UDP socket must be connected, and bound to a device)
Most developpers dont even know UDP socket can be connected...
We added large hashtables in commit f86dcc5aa8c7908f2c287e7a211228df599e3e71
(udp: dynamically size hash tables at boot time), so average chain length should
be small anyway...
--
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