From patchwork Tue Feb 28 01:44:00 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sowmini Varadhan X-Patchwork-Id: 733954 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3vXwbv2Kq0z9s8C for ; Wed, 1 Mar 2017 11:02:03 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752094AbdCAABu (ORCPT ); Tue, 28 Feb 2017 19:01:50 -0500 Received: from aserp1050.oracle.com ([141.146.126.70]:27614 "EHLO aserp1050.oracle.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751486AbdCAABc (ORCPT ); Tue, 28 Feb 2017 19:01:32 -0500 Received: from aserp1040.oracle.com (aserp1040.oracle.com [141.146.126.69]) by aserp1050.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id v1SL5kRR023482 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Tue, 28 Feb 2017 21:05:47 GMT Received: from userv0022.oracle.com (userv0022.oracle.com [156.151.31.74]) by aserp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id v1SL3li6012781 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 Feb 2017 21:03:48 GMT Received: from userv0121.oracle.com (userv0121.oracle.com [156.151.31.72]) by userv0022.oracle.com (8.14.4/8.14.4) with ESMTP id v1SL3lof028248 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Tue, 28 Feb 2017 21:03:47 GMT Received: from abhmp0014.oracle.com (abhmp0014.oracle.com [141.146.116.20]) by userv0121.oracle.com (8.14.4/8.13.8) with ESMTP id v1SL3koN029784; Tue, 28 Feb 2017 21:03:46 GMT Received: from ipftiger1.us.oracle.com (/10.208.179.35) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 28 Feb 2017 13:03:46 -0800 From: Sowmini Varadhan To: sowmini.varadhan@oracle.com, dvyukov@google.com, netdev@vger.kernel.org Subject: [PATCH RFC net-next] Cancel any pending connection attempts before taking down connection Date: Mon, 27 Feb 2017 17:44:00 -0800 Message-Id: <1488246240-159171-1-git-send-email-sowmini.varadhan@oracle.com> X-Mailer: git-send-email 1.7.1 To: sowmini.varadhan@oracle.com X-Source-IP: aserp1040.oracle.com [141.146.126.69] Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This is a test patch being supplied for a trial run on syzkaller. Explicitly cancel the workq before releasing resources that will allow netns deletion, so that the connect request does not trip up on a use-after free of the netns afterward. Signed-off-by: Sowmini Varadhan Reported-by: Dmitry Vyukov --- net/rds/tcp.c | 2 ++ 1 files changed, 2 insertions(+), 0 deletions(-) diff --git a/net/rds/tcp.c b/net/rds/tcp.c index 57bb523..2568eb1 100644 --- a/net/rds/tcp.c +++ b/net/rds/tcp.c @@ -509,6 +509,8 @@ static void rds_tcp_conn_paths_destroy(struct rds_connection *conn) for (i = 0; i < RDS_MPATH_WORKERS; i++) { cp = &conn->c_path[i]; + if (cancel_delayed_work_sync(&cp->cp_conn_w)) + pr_info("cancelled on path %d\n", i); tc = cp->cp_transport_data; if (!tc->t_sock) continue;