From patchwork Fri Dec 22 19:47:52 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Herbert X-Patchwork-Id: 852548 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=quantonium-net.20150623.gappssmtp.com header.i=@quantonium-net.20150623.gappssmtp.com header.b="EZAoa15A"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3z3Jw710m5z9ryr for ; Sat, 23 Dec 2017 06:48:23 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756410AbdLVTsS (ORCPT ); Fri, 22 Dec 2017 14:48:18 -0500 Received: from mail-pl0-f68.google.com ([209.85.160.68]:44186 "EHLO mail-pl0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1756167AbdLVTsR (ORCPT ); Fri, 22 Dec 2017 14:48:17 -0500 Received: by mail-pl0-f68.google.com with SMTP id n13so13459183plp.11 for ; Fri, 22 Dec 2017 11:48:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=quantonium-net.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=IPvzcge6px4dWYKCJ1qiij30+7Z+dQJJclOnCL9Zqdk=; b=EZAoa15ASI3/jDF0n5rpHP094tWulqVR3wUCVr2uQdmbTjMCbvpVlWD3x/OkBsR/ay mS+e8Ov3/+TW1CKqH7lmMc2Aqml0n00szEP8v2XS3+NaiNglAXdhCy0OqRbu0Hhtm+Kh ofQPD1Dp3HJhO3usCP2ZIrxxc+OOkClq6cnm7wHKQYoM5u4s5RSDZH6fL/Vx4M2Hc3Tn zPNw2s3CEMiy6kv+p9f2oOc95vJUL1SdtqOl+kIKx0yeaPxmx1fXj9nqPRFNMiobFY5u Qenj7q03NIqmemZDJRZ/ls9tEnnPFOjsmY+hk9kT9yHheJYGyIAs2tp551vld1qm1fxC lW/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=IPvzcge6px4dWYKCJ1qiij30+7Z+dQJJclOnCL9Zqdk=; b=kjdW+6l4rjg46HAkNsdZlfbqFD/UJuHgeOtYLmxDbVNxDjMirQx6OjsrldLQzgbF6C JxkiFbMrvITFB7x/JDLPolT6iDvlBN6Y9M0RXoFdWhvZemBbtjNqq/WA+i2t7Sj+qKh3 1W+7rd0v6S2QmyzIHAmpkbiw1bx+q+pxzQaDPT2Oqt2IhSQPIbe5ZOGIoT3VDm6Xs9KO J74WTUnPMmCZeVkixmWeZVTVxvJXNsVdx9FlmKPegM8hUTcjwmx7XcfmcHF2HELHx7XI 5UTB1I+HLqobUn4ZTuelc3hTQA6k+kYPMnEA1t2A5EXk82GCJMEZI0OkPJSGyvWn1EF1 PJRQ== X-Gm-Message-State: AKGB3mI/9vYPXL9bgM3AdXYgK3oZSYAOhZvu7cKM2j4k7LCJmLn4xEB9 4wEZsSH/DUsdQFQLOTAabCoxfA== X-Google-Smtp-Source: ACJfBouQs0Y+YrV2dFyoagUZ3kbaYVuFAFOWITDgaibEckppBvMFZPVgqzqpxTvtfMgNKKPRChciqw== X-Received: by 10.84.248.1 with SMTP id p1mr14993034pll.50.1513972096808; Fri, 22 Dec 2017 11:48:16 -0800 (PST) Received: from localhost.localdomain (c-73-162-13-107.hsd1.ca.comcast.net. [73.162.13.107]) by smtp.gmail.com with ESMTPSA id e7sm50080812pfj.44.2017.12.22.11.48.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 22 Dec 2017 11:48:15 -0800 (PST) From: Tom Herbert To: davem@davemloft.net Cc: netdev@vger.kernel.org, dvyukov@google.com, john.fastabend@gmail.com, rohit@quantonium.net, Tom Herbert Subject: [PATCH net-next 1/4] sock: Add sock_owned_by_user_nocheck Date: Fri, 22 Dec 2017 11:47:52 -0800 Message-Id: <20171222194755.8544-2-tom@quantonium.net> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20171222194755.8544-1-tom@quantonium.net> References: <20171222194755.8544-1-tom@quantonium.net> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org This allows checking socket lock ownership with producing lockdep warnings. Signed-off-by: Tom Herbert --- include/net/sock.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/include/net/sock.h b/include/net/sock.h index 0a32f3ce381c..3b4ca2046f8c 100644 --- a/include/net/sock.h +++ b/include/net/sock.h @@ -1515,6 +1515,11 @@ static inline bool sock_owned_by_user(const struct sock *sk) return sk->sk_lock.owned; } +static inline bool sock_owned_by_user_nocheck(const struct sock *sk) +{ + return sk->sk_lock.owned; +} + /* no reclassification while locks are held */ static inline bool sock_allow_reclassification(const struct sock *csk) {