mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 19:56:18 +00:00
ipsec: pfkey should ignore events when no listeners
When pfkey has no km listeners, it still does a lot of work before finding out there aint nobody out there. If a tree falls in a forest and no one is around to hear it, does it make a sound? In this case it makes a lot of noise: With this short-circuit adding 10s of thousands of SAs using netlink improves performance by ~10%. Signed-off-by: Jamal Hadi Salim <hadi@cyberus.ca> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
bc6cffd177
commit
99c6f60e72
1 changed files with 3 additions and 0 deletions
|
@ -3030,6 +3030,9 @@ static int key_notify_sa_expire(struct xfrm_state *x, struct km_event *c)
|
||||||
|
|
||||||
static int pfkey_send_notify(struct xfrm_state *x, struct km_event *c)
|
static int pfkey_send_notify(struct xfrm_state *x, struct km_event *c)
|
||||||
{
|
{
|
||||||
|
if (atomic_read(&pfkey_socks_nr) == 0)
|
||||||
|
return 0;
|
||||||
|
|
||||||
switch (c->event) {
|
switch (c->event) {
|
||||||
case XFRM_MSG_EXPIRE:
|
case XFRM_MSG_EXPIRE:
|
||||||
return key_notify_sa_expire(x, c);
|
return key_notify_sa_expire(x, c);
|
||||||
|
|
Loading…
Reference in a new issue