From patchwork Fri Dec 1 23:28:44 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Eric Dumazet X-Patchwork-Id: 843818 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=netdev-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=gmail.com header.i=@gmail.com header.b="EqjzWkdF"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3ypVp90dpZz9sMN for ; Sat, 2 Dec 2017 10:28:49 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751706AbdLAX2r (ORCPT ); Fri, 1 Dec 2017 18:28:47 -0500 Received: from mail-pf0-f193.google.com ([209.85.192.193]:36713 "EHLO mail-pf0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751188AbdLAX2p (ORCPT ); Fri, 1 Dec 2017 18:28:45 -0500 Received: by mail-pf0-f193.google.com with SMTP id p84so5295785pfd.3 for ; Fri, 01 Dec 2017 15:28:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=message-id:subject:from:to:cc:date:mime-version :content-transfer-encoding; bh=QMvnKRkR9xZR/KCZmmGz0r9OEW82bsQiEjWL9J6XlK0=; b=EqjzWkdFDTraQN0BMlci727KZ6FGSx7s8uGrW2kulQlUPGYQuVWsUaSGbOGFPiEaQL ZAyqxoVgWJAEuGJSBBBTw/75tZR+uOzIZFP0QnHET3mFl2A/6BdUZr7NXz674uoAzQ2L NVqGvdbGxwrmzaqoYY8Hj9/U4Kkh9gIaC63jfx19tFxPjsXcIPPep0mQYAO1IrvIJ1Wb 9M2zSuU6WD59QNtmCF0GSMA9eG2qq6melWAuOFDHUGBFM6r8X8hvAsioqCfofOxFF/Kp Vw5+TcO8JyJHWzfJVfvZHXo4jOM9ZQcLTkxdDSJBw1UwtsMIOUvH7t+UMSkloACUfoAZ 2ROg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:cc:date:mime-version :content-transfer-encoding; bh=QMvnKRkR9xZR/KCZmmGz0r9OEW82bsQiEjWL9J6XlK0=; b=q1zdeFH7fNAlYNoRRJIwEMuLLgAm3UT0UYAY6HLQWn5RZAPOYmnayFojP0D2wPAT/1 0oLeCn+tqvYMCmkEGF51XOi1WSkS6Uxr3QX2aMeobDP4H6axZCq3UFEJhBKHbFI5w6oB PEI7jemFRW08p1aXGeIwBSTPD/+xi3K4DHXhU+S281oKVZILetSfrxBWZYIRVeJukYTD HCp0nk9BJURuZ6h9g/nziQ5sUHePONsWhgyKNAM24EYq5San4/cgPAssprf2pF6AGQWk lIAh8psu9U/2FSkgTLCvWWr1V0SFk5hCPz0V4pclP3IhX/MPUnw2Zxwu0fmRXiNso63c G0eQ== X-Gm-Message-State: AJaThX4cZcfu/Eu/tB3ufIQAoFdmgGULgziCbV/V5X2vZhYxuIpN2155 bwF0lZOLxPhgrKLII7ldHgmkxg== X-Google-Smtp-Source: AGs4zMYgiIJKh1nBpL7qfBPBdjlhrW9l+H8yxVBB8jB2X8XnsXo5PP5kzrYXrzLsBfWxAmcOkwlMRA== X-Received: by 10.101.69.68 with SMTP id x4mr5326682pgr.272.1512170925483; Fri, 01 Dec 2017 15:28:45 -0800 (PST) Received: from ?IPv6:2620:15c:2c1:100:3fe9:f33:c853:df11? ([2620:15c:2c1:100:3fe9:f33:c853:df11]) by smtp.googlemail.com with ESMTPSA id a87sm14883414pfg.159.2017.12.01.15.28.44 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 01 Dec 2017 15:28:44 -0800 (PST) Message-ID: <1512170924.19682.50.camel@gmail.com> Subject: [PATCH net] Revert "tcp: must block bh in __inet_twsk_hashdance()" From: Eric Dumazet To: David Miller Cc: netdev Date: Fri, 01 Dec 2017 15:28:44 -0800 X-Mailer: Evolution 3.22.6-1+deb9u1 Mime-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org From: Eric Dumazet We had to disable BH _before_ calling __inet_twsk_hashdance() in commit cfac7f836a71 ("tcp/dccp: block bh before arming time_wait timer"). This means we can revert 614bdd4d6e61 ("tcp: must block bh in __inet_twsk_hashdance()"). Signed-off-by: Eric Dumazet ---  net/ipv4/inet_timewait_sock.c |    6 +++---  1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/net/ipv4/inet_timewait_sock.c b/net/ipv4/inet_timewait_sock.c index c690cd0d9b3f0af53c23b9a1ecc87be4098ae059..b563e0c46bac2362acccf38495546a8b6b726384 100644 --- a/net/ipv4/inet_timewait_sock.c +++ b/net/ipv4/inet_timewait_sock.c @@ -93,7 +93,7 @@ static void inet_twsk_add_bind_node(struct inet_timewait_sock *tw, } /* - * Enter the time wait state. + * Enter the time wait state. This is called with locally disabled BH. * Essentially we whip up a timewait bucket, copy the relevant info into it * from the SK, and mess with hash chains and list linkage. */ @@ -111,7 +111,7 @@ void __inet_twsk_hashdance(struct inet_timewait_sock *tw, struct sock *sk, */ bhead = &hashinfo->bhash[inet_bhashfn(twsk_net(tw), inet->inet_num, hashinfo->bhash_size)]; - spin_lock_bh(&bhead->lock); + spin_lock(&bhead->lock); tw->tw_tb = icsk->icsk_bind_hash; WARN_ON(!icsk->icsk_bind_hash); inet_twsk_add_bind_node(tw, &tw->tw_tb->owners); @@ -137,7 +137,7 @@ void __inet_twsk_hashdance(struct inet_timewait_sock *tw, struct sock *sk, if (__sk_nulls_del_node_init_rcu(sk)) sock_prot_inuse_add(sock_net(sk), sk->sk_prot, -1); - spin_unlock_bh(lock); + spin_unlock(lock); } EXPORT_SYMBOL_GPL(__inet_twsk_hashdance);