]> git.baikalelectronics.ru Git - kernel.git/commit
net neigh: Optimize neighbor entry size calculation.
authorYOSHIFUJI Hideaki / 吉藤英明 <yoshfuji@linux-ipv6.org>
Thu, 24 Jan 2013 00:44:23 +0000 (00:44 +0000)
committerDavid S. Miller <davem@davemloft.net>
Tue, 29 Jan 2013 04:17:51 +0000 (23:17 -0500)
commitfada9fcdb546efc8f050f653b63572466c7601c5
treea983dd9edfdb434076751c50f3952c744f64e17f
parent7eafb764ae1dc0ae5b5a89301db171720ac22ee8
net neigh: Optimize neighbor entry size calculation.

When allocating memory for neighbour cache entry, if
tbl->entry_size is not set, we always calculate
sizeof(struct neighbour) + tbl->key_len, which is common
in the same table.

With this change, set tbl->entry_size during the table
initialization phase, if it was not set, and use it in
neigh_alloc() and neighbour_priv().

This change also allow us to have both of protocol private
data and device priate data at tha same time.

Note that the only user of prototcol private is DECnet
and the only user of device private is ATM CLIP.
Since those are exclusive, we have not been facing issues
here.

Signed-off-by: YOSHIFUJI Hideaki <yoshfuji@linux-ipv6.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/neighbour.h
net/core/neighbour.c