Message ID | 20200601174032.556673050@linuxfoundation.org |
---|---|
State | Superseded |
Headers | show
Return-Path: <SRS0=Ycwd=7O=vger.kernel.org=stable-owner@kernel.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=DKIMWL_WL_HIGH, DKIM_SIGNED, DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI, SIGNED_OFF_BY, SPF_HELO_NONE, SPF_PASS, USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E518DC433E4 for <stable@archiver.kernel.org>; Mon, 1 Jun 2020 18:50:28 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id BBCF1206C3 for <stable@archiver.kernel.org>; Mon, 1 Jun 2020 18:50:28 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1591037428; bh=qRh+8w9L/TO6TQM5c5CdJmE+kZHA8iEnEFp4+SXuMmA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:List-ID:From; b=T6WOKEwTV97+Ig10xR7XumPlHsLmmlEfJl0LtrxjUMz+fgt0Xho3nOxL4I7QTFXuS 1tSqLmzh3aQd6Z78zXFhWpvQnQ8J+Xf2ri24zSCzLjKH9mH3NAKVW3MXBoosRIFhly yyKiIX9bARXfqoAyrKX8vJJ7hTO894FhPwPyQ8cc= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728862AbgFASu0 (ORCPT <rfc822;stable@archiver.kernel.org>); Mon, 1 Jun 2020 14:50:26 -0400 Received: from mail.kernel.org ([198.145.29.99]:51406 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729660AbgFASGE (ORCPT <rfc822;stable@vger.kernel.org>); Mon, 1 Jun 2020 14:06:04 -0400 Received: from localhost (83-86-89-107.cable.dynamic.v4.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 368622068D; Mon, 1 Jun 2020 18:06:03 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1591034763; bh=qRh+8w9L/TO6TQM5c5CdJmE+kZHA8iEnEFp4+SXuMmA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=04s8n6OUjaPI94gFzc3zV+g1sjo/dxy3kRcrNuIHdFIXb5YjzhfmOwHSEBXmUOMTD SxI3Za/LuxQ4my9wAeKK5JJ2rAlQKDNOg6HgUWfAsu5e2Sw3xgGCYgzmAJxhxL/nxU PahkYdV9afofq/C+uqp5ahhD2V8zJbRm/PeCKCLc= From: Greg Kroah-Hartman <gregkh@linuxfoundation.org> To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>, stable@vger.kernel.org, Christophe Gouault <christophe.gouault@6wind.com>, Nicolas Dichtel <nicolas.dichtel@6wind.com>, Steffen Klassert <steffen.klassert@secunet.com> Subject: [PATCH 4.19 77/95] xfrm interface: fix oops when deleting a x-netns interface Date: Mon, 1 Jun 2020 19:54:17 +0200 Message-Id: <20200601174032.556673050@linuxfoundation.org> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20200601174020.759151073@linuxfoundation.org> References: <20200601174020.759151073@linuxfoundation.org> User-Agent: quilt/0.66 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: stable-owner@vger.kernel.org Precedence: bulk List-ID: <stable.vger.kernel.org> X-Mailing-List: stable@vger.kernel.org |
Series |
None
|
expand
|
--- a/net/xfrm/xfrm_interface.c +++ b/net/xfrm/xfrm_interface.c @@ -780,7 +780,28 @@ static void __net_exit xfrmi_exit_net(st rtnl_unlock(); } +static void __net_exit xfrmi_exit_batch_net(struct list_head *net_exit_list) +{ + struct net *net; + LIST_HEAD(list); + + rtnl_lock(); + list_for_each_entry(net, net_exit_list, exit_list) { + struct xfrmi_net *xfrmn = net_generic(net, xfrmi_net_id); + struct xfrm_if __rcu **xip; + struct xfrm_if *xi; + + for (xip = &xfrmn->xfrmi[0]; + (xi = rtnl_dereference(*xip)) != NULL; + xip = &xi->next) + unregister_netdevice_queue(xi->dev, &list); + } + unregister_netdevice_many(&list); + rtnl_unlock(); +} + static struct pernet_operations xfrmi_net_ops = { + .exit_batch = xfrmi_exit_batch_net, .init = xfrmi_init_net, .exit = xfrmi_exit_net, .id = &xfrmi_net_id,