xfrm: fix xfrm_dev_event() missing when compile without CONFIG_XFRM_OFFLOAD
authorHangbin Liu <liuhangbin@gmail.com>
Thu, 1 Jun 2017 06:57:56 +0000 (14:57 +0800)
committerSteffen Klassert <steffen.klassert@secunet.com>
Wed, 7 Jun 2017 06:16:27 +0000 (08:16 +0200)
commitb81f884a547b5c264c13fdfaa3b65cf994bf1dcf
tree55148c38ede04d6e2960ffa5d09aa91d19cf301e
parentb29794ec95c6856b316c2295904208bf11ffddd9
xfrm: fix xfrm_dev_event() missing when compile without CONFIG_XFRM_OFFLOAD

In commit d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API") we
make xfrm_device.o only compiled when enable option CONFIG_XFRM_OFFLOAD.
But this will make xfrm_dev_event() missing if we only enable default XFRM
options.

Then if we set down and unregister an interface with IPsec on it. there
will no xfrm_garbage_collect(), which will cause dev usage count hold and
get error like:

unregister_netdevice: waiting for <dev> to become free. Usage count = 4

Fixes: d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: Steffen Klassert <steffen.klassert@secunet.com>
include/net/xfrm.h
net/xfrm/Makefile
net/xfrm/xfrm_device.c