From: Steffen Klassert Date: Mon, 4 Sep 2017 08:59:55 +0000 (+0200) Subject: xfrm: Fix negative device refcount on offload failure. X-Git-Tag: v4.14-rc5~40^2~7^2~2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=67a63387b1417b5954eedb15f638f1f0bee3da49;p=platform%2Fkernel%2Flinux-rpi3.git xfrm: Fix negative device refcount on offload failure. Reset the offload device at the xfrm_state if the device was not able to offload the state. Otherwise we drop the device refcount twice. Fixes: d77e38e612a0 ("xfrm: Add an IPsec hardware offloading API") Reported-by: Shannon Nelson Signed-off-by: Steffen Klassert --- diff --git a/net/xfrm/xfrm_device.c b/net/xfrm/xfrm_device.c index acf0010..30e5746 100644 --- a/net/xfrm/xfrm_device.c +++ b/net/xfrm/xfrm_device.c @@ -91,6 +91,7 @@ int xfrm_dev_state_add(struct net *net, struct xfrm_state *x, } if (!dev->xfrmdev_ops || !dev->xfrmdev_ops->xdo_dev_state_add) { + xso->dev = NULL; dev_put(dev); return 0; }