summaryrefslogtreecommitdiffstats
path: root/kernel/locking
diff options
context:
space:
mode:
authorThomas Graf <tgraf@suug.ch>2015-01-02 23:00:18 +0100
committerDavid S. Miller <davem@davemloft.net>2015-01-03 20:32:57 +0100
commit897362e446436d245972e72c6bc5b33bd7a5c659 (patch)
treeefddc040f4d1042b486100cb20c3c3036b292420 /kernel/locking
parentrhashtable: Factor out bucket_tail() function (diff)
downloadlinux-897362e446436d245972e72c6bc5b33bd7a5c659.tar.xz
linux-897362e446436d245972e72c6bc5b33bd7a5c659.zip
nft_hash: Remove rhashtable_remove_pprev()
The removal function of nft_hash currently stores a reference to the previous element during lookup which is used to optimize removal later on. This was possible because a lock is held throughout calling rhashtable_lookup() and rhashtable_remove(). With the introdution of deferred table resizing in parallel to lookups and insertions, the nftables lock will no longer synchronize all table mutations and the stored pprev may become invalid. Removing this optimization makes removal slightly more expensive on average but allows taking the resize cost out of the insert and remove path. Signed-off-by: Thomas Graf <tgraf@suug.ch> Cc: netfilter-devel@vger.kernel.org Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/locking')
0 files changed, 0 insertions, 0 deletions