From patchwork Thu Apr 25 16:56:34 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Kicinski X-Patchwork-Id: 1090997 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=none (p=none dis=none) header.from=netronome.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="vOX38aD7"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44qjyh0HMlz9s4V for ; Fri, 26 Apr 2019 02:56:59 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728834AbfDYQ46 (ORCPT ); Thu, 25 Apr 2019 12:56:58 -0400 Received: from mail-qt1-f193.google.com ([209.85.160.193]:37000 "EHLO mail-qt1-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728400AbfDYQ45 (ORCPT ); Thu, 25 Apr 2019 12:56:57 -0400 Received: by mail-qt1-f193.google.com with SMTP id e2so144188qtb.4 for ; Thu, 25 Apr 2019 09:56:57 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=i53BkRPJIgtaj478bUYEgcZI8Dw4vYdeuAt9c8BXlBA=; b=vOX38aD720HjzaJMWCj7wtG6PPKZDZQxp+CvF2xecIRjQety2rSvC4JDrLLlxv56Ua OFC194yK/Vgf+atFo4J/YPqsv0Pb1GdjY18GgzpEqUE2Enys95S6n37HZWdUoilNh2ma 1wIuJtjOgjJYyPnA2eetVRmvKEk1wOj7WnOKP9QPNna9x+gGPqUyNKiMiO30Q8w/m/3o eyEWOW+tOhKl8s3NW/EcyVzCTHs/J5NORAd8xyFZ0RmvaY3/6jVJ6d84baxfymkO8slQ vqzzbPk1N/9MeLuGM6IeWmBGl5wKZnl71yrw+3p93UhH2jH1sAOiRddyVaHe4cZo/nLt bfZg== 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:mime-version:content-transfer-encoding; bh=i53BkRPJIgtaj478bUYEgcZI8Dw4vYdeuAt9c8BXlBA=; b=l0zs16oA9LOqYRxpiCAgFNW2v6Npqq40yajBrbaLX7AUk3AMO6/DdjLjVV/XNUyPd9 3Jjy1gLO0JlMnXfmS7UE8YLxMHjS4CaF42yTX+zPhbUoWy1Bz6c9x0L2xKgQjydwd8nZ u8pHAslIAsqdRBtU9dJlVzVrzcFk2CbLpGBpBc+0T8j4eZSLCtW2fCoajkNe9UwtrjZ0 B/HpyUz8wkqH7rdiOHrJuAOGuyNz7aRVwErdgMsIEZPZGthVG4Yq+Huv4ox8elZxzzLy yQrertdqMmE/Wb14dHcD/LfI77/3V5Bgfi9MXh28DQLhCzVZHT54LZ3Ll3DcAYWZF3Ww DETw== X-Gm-Message-State: APjAAAU0R+gNhCvnpAIcFqIIjv0gt+bS61KTIqkOCP4Sbt89pZ72kKFa oE1FavZv7DWtLWLk6/sYMjKtp2WLapk= X-Google-Smtp-Source: APXvYqw9oNHIw5RQj/zhWfyUASyFDkv1eeVzoX5u4dpOXU2OuLKfu0mLZDrTq0G3saCNX/xBW3RKEg== X-Received: by 2002:ac8:148a:: with SMTP id l10mr12060489qtj.62.1556211416871; Thu, 25 Apr 2019 09:56:56 -0700 (PDT) Received: from jkicinski-Precision-T1700.netronome.com ([66.60.152.14]) by smtp.gmail.com with ESMTPSA id d14sm6838903qkg.72.2019.04.25.09.56.55 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Apr 2019 09:56:56 -0700 (PDT) From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, borisp@mellanox.com, aviadye@mellanox.com, davejwatson@fb.com, john.fastabend@gmail.com, daniel@iogearbox.net, alexei.starovoitov@gmail.com, Jakub Kicinski , "Reviewed-by : Simon Horman" Subject: [PATCH net-next 1/4] net/tls: don't log errors every time offload can't proceed Date: Thu, 25 Apr 2019 09:56:34 -0700 Message-Id: <20190425165637.7924-2-jakub.kicinski@netronome.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190425165637.7924-1-jakub.kicinski@netronome.com> References: <20190425165637.7924-1-jakub.kicinski@netronome.com> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Currently when CONFIG_TLS_DEVICE is set each time kTLS connection is opened and the offload is not successful (either because the underlying device doesn't support it or e.g. it's tables are full) a rate limited error will be printed to the logs. There is nothing wrong with failing TLS offload. SW path will process the packets just fine, avoid the noisy messages by demoting them from error to debug level. Signed-off-by: Jakub Kicinski Reviewed-by: Reviewed-by: Simon Horman --- net/tls/tls_device.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index 9f3bdbc1e593..9d67989ab7a7 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c @@ -865,8 +865,8 @@ int tls_set_device_offload_rx(struct sock *sk, struct tls_context *ctx) } if (!(netdev->features & NETIF_F_HW_TLS_RX)) { - pr_err_ratelimited("%s: netdev %s with no TLS offload\n", - __func__, netdev->name); + pr_debug_ratelimited("%s: netdev %s with no TLS offload\n", + __func__, netdev->name); rc = -ENOTSUPP; goto release_netdev; } @@ -895,8 +895,8 @@ int tls_set_device_offload_rx(struct sock *sk, struct tls_context *ctx) &ctx->crypto_recv.info, tcp_sk(sk)->copied_seq); if (rc) { - pr_err_ratelimited("%s: The netdev has refused to offload this socket\n", - __func__); + pr_debug_ratelimited("%s: The netdev has refused to offload this socket\n", + __func__); goto free_sw_resources; } From patchwork Thu Apr 25 16:56:35 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Kicinski X-Patchwork-Id: 1091000 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=none (p=none dis=none) header.from=netronome.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="Jugd6IJx"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44qjys2M8dz9s6w for ; Fri, 26 Apr 2019 02:57:09 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728881AbfDYQ5B (ORCPT ); Thu, 25 Apr 2019 12:57:01 -0400 Received: from mail-qt1-f195.google.com ([209.85.160.195]:40295 "EHLO mail-qt1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725941AbfDYQ5A (ORCPT ); Thu, 25 Apr 2019 12:57:00 -0400 Received: by mail-qt1-f195.google.com with SMTP id y49so868579qta.7 for ; Thu, 25 Apr 2019 09:56:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=yHqhtVdh7ZCBuIIEzUkLtCboiDeKokFWPBGORvUZ1mE=; b=Jugd6IJxbvNLTnipj70WsEMB4o646UKPfom98LnfGBuBJdVhnebgbcOcUkXUT8boWm NatIRG1VBgugytLDaKNE+tQ3CR7HLajSuL6oexqtYjombTnVGWEAz3BPlfHNZ2YVzUqf WYscD1wNTRzhVrrpOV+jYHWJdc8HrWpyIdho3R6kt2NkDtuxeFvhuKlZXdo3po/pNhOd sAQGtYKVrox048P4iqifK6ZT3NVnxcg2bsF7PGRXztWuOP/sfKp8dX7WNDJRqsXvntAX efMPm20vfT3Y56t/lAzcFIaEi1tkOPKLQnRTcobJZHYVnOmZqtMLOS7V3oqAk0FY7hz4 XhrA== 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:mime-version:content-transfer-encoding; bh=yHqhtVdh7ZCBuIIEzUkLtCboiDeKokFWPBGORvUZ1mE=; b=DTDB1p8bMDrbn/vjQmH2jbKAFwxuAK1P4qo3/Nycu/cw3c2XXpU9IGzRVvMLIj2NdR Zym5bYF65IvvunQfJzZR92f+Ub20EHhvC1+1yCRcE4+M4NnfLr3V+qPoRJCV8WN76vAt gLPULnMr4tgLJ13iEZcaOP0WISyoWRcXRMZoHXPRnEE3uqAOfVs6TTXcct3rzK1bjuy1 v4DIacc5pRmTi7/zdtF6ljr6cqXobUFiQSTy27jZPYsetMNrqqSGjzjaTtkdDKiTCVzY 0iSnppCaTUO8sog+4YM/bHYkEE5JN6Cqw9X99mtd24H+5vYweZmScqxPPHuFCq1Bp6IJ wVDw== X-Gm-Message-State: APjAAAUBe7iV5KbkoIZc41iOMsrkyEl7RR6u7FqKGUVISSPr4yQc3AoB WfMwX7co9zkKTHGYxKU1nzN3rg== X-Google-Smtp-Source: APXvYqwmBJlyvpJp5mcsMzaeRxsyHxFsUL1ixMZfuQ/T8J7VNsXEZz8Df2iSscWWlgtkSYFjIBB37Q== X-Received: by 2002:ac8:1489:: with SMTP id l9mr23694732qtj.236.1556211418852; Thu, 25 Apr 2019 09:56:58 -0700 (PDT) Received: from jkicinski-Precision-T1700.netronome.com ([66.60.152.14]) by smtp.gmail.com with ESMTPSA id d14sm6838903qkg.72.2019.04.25.09.56.56 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Apr 2019 09:56:58 -0700 (PDT) From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, borisp@mellanox.com, aviadye@mellanox.com, davejwatson@fb.com, john.fastabend@gmail.com, daniel@iogearbox.net, alexei.starovoitov@gmail.com, Jakub Kicinski , Dirk van der Merwe , "Reviewed-by : Simon Horman" Subject: [PATCH net-next 2/4] net/tls: remove old exports of sk_destruct functions Date: Thu, 25 Apr 2019 09:56:35 -0700 Message-Id: <20190425165637.7924-3-jakub.kicinski@netronome.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190425165637.7924-1-jakub.kicinski@netronome.com> References: <20190425165637.7924-1-jakub.kicinski@netronome.com> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org tls_device_sk_destruct being set on a socket used to indicate that socket is a kTLS device one. That is no longer true - now we use sk_validate_xmit_skb pointer for that purpose. Remove the export. tls_device_attach() needs to be moved. While at it, remove the dead declaration of tls_sk_destruct(). Signed-off-by: Jakub Kicinski Reviewed-by: Dirk van der Merwe Reviewed-by: Reviewed-by: Simon Horman --- include/net/tls.h | 2 -- net/tls/tls_device.c | 35 +++++++++++++++++------------------ 2 files changed, 17 insertions(+), 20 deletions(-) diff --git a/include/net/tls.h b/include/net/tls.h index d9d0ac66f040..20196cb31ecc 100644 --- a/include/net/tls.h +++ b/include/net/tls.h @@ -317,7 +317,6 @@ int tls_set_device_offload(struct sock *sk, struct tls_context *ctx); int tls_device_sendmsg(struct sock *sk, struct msghdr *msg, size_t size); int tls_device_sendpage(struct sock *sk, struct page *page, int offset, size_t size, int flags); -void tls_device_sk_destruct(struct sock *sk); void tls_device_free_resources_tx(struct sock *sk); void tls_device_init(void); void tls_device_cleanup(void); @@ -336,7 +335,6 @@ static inline u32 tls_record_start_seq(struct tls_record_info *rec) return rec->end_seq - rec->len; } -void tls_sk_destruct(struct sock *sk, struct tls_context *ctx); int tls_push_sg(struct sock *sk, struct tls_context *ctx, struct scatterlist *sg, u16 first_offset, int flags); diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index 9d67989ab7a7..cb368efe3567 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c @@ -89,22 +89,6 @@ static void tls_device_gc_task(struct work_struct *work) } } -static void tls_device_attach(struct tls_context *ctx, struct sock *sk, - struct net_device *netdev) -{ - if (sk->sk_destruct != tls_device_sk_destruct) { - refcount_set(&ctx->refcount, 1); - dev_hold(netdev); - ctx->netdev = netdev; - spin_lock_irq(&tls_device_lock); - list_add_tail(&ctx->list, &tls_device_list); - spin_unlock_irq(&tls_device_lock); - - ctx->sk_destruct = sk->sk_destruct; - sk->sk_destruct = tls_device_sk_destruct; - } -} - static void tls_device_queue_ctx_destruction(struct tls_context *ctx) { unsigned long flags; @@ -199,7 +183,7 @@ static void tls_icsk_clean_acked(struct sock *sk, u32 acked_seq) * socket and no in-flight SKBs associated with this * socket, so it is safe to free all the resources. */ -void tls_device_sk_destruct(struct sock *sk) +static void tls_device_sk_destruct(struct sock *sk) { struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_offload_context_tx *ctx = tls_offload_ctx_tx(tls_ctx); @@ -217,7 +201,6 @@ void tls_device_sk_destruct(struct sock *sk) if (refcount_dec_and_test(&tls_ctx->refcount)) tls_device_queue_ctx_destruction(tls_ctx); } -EXPORT_SYMBOL(tls_device_sk_destruct); void tls_device_free_resources_tx(struct sock *sk) { @@ -682,6 +665,22 @@ int tls_device_decrypted(struct sock *sk, struct sk_buff *skb) tls_device_reencrypt(sk, skb); } +static void tls_device_attach(struct tls_context *ctx, struct sock *sk, + struct net_device *netdev) +{ + if (sk->sk_destruct != tls_device_sk_destruct) { + refcount_set(&ctx->refcount, 1); + dev_hold(netdev); + ctx->netdev = netdev; + spin_lock_irq(&tls_device_lock); + list_add_tail(&ctx->list, &tls_device_list); + spin_unlock_irq(&tls_device_lock); + + ctx->sk_destruct = sk->sk_destruct; + sk->sk_destruct = tls_device_sk_destruct; + } +} + int tls_set_device_offload(struct sock *sk, struct tls_context *ctx) { u16 nonce_size, tag_size, iv_size, rec_seq_size; From patchwork Thu Apr 25 16:56:36 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Kicinski X-Patchwork-Id: 1090998 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=none (p=none dis=none) header.from=netronome.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="A2ZyR9DT"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44qjyn5P6Fz9s6w for ; Fri, 26 Apr 2019 02:57:05 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728748AbfDYQ5D (ORCPT ); Thu, 25 Apr 2019 12:57:03 -0400 Received: from mail-qt1-f194.google.com ([209.85.160.194]:44440 "EHLO mail-qt1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728897AbfDYQ5B (ORCPT ); Thu, 25 Apr 2019 12:57:01 -0400 Received: by mail-qt1-f194.google.com with SMTP id s10so835189qtc.11 for ; Thu, 25 Apr 2019 09:57:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=kQZpnnRl5wcGLQoZWkfdyGpk1NORYZh9ngok784yIxQ=; b=A2ZyR9DT08U6OQw/CxhyZ2ZtjzXlQPnc2Z9xgDzwL0OYJvkBE61+fvQQrpBIXKXAOw IKRLRq7qWP5ey0pBVAyWpwBHh3RZIYYlFjr5u76gYuBrCXy+C0E85q/+EF3QLOkyovFD 9dVUMt3CSR/MbWrZ9G0xBKDVYjVesFV9yIJ56jcAKG1hVtz6XhArll+2BDCZ6T+1dhiA GtGmGDJtf4xEzIFKcL/oI00GKsZIg47x1NkDlwD3au0rs6luCqIrRP50G3+8d57kA0Un 9V/3jAEGIxWNIYbkRD+3RMlEoeBWiybUjUvZveNcz4mEgrADR3M3wnJdnxVv3YYf3aX+ zrUw== 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:mime-version:content-transfer-encoding; bh=kQZpnnRl5wcGLQoZWkfdyGpk1NORYZh9ngok784yIxQ=; b=ppfrpAe2mYs4TtvJEV47dE+oYGaI33BTo715ECKssJXJGSxhgqKk74aHkLM/n58ZlO bboe9n/WBo8QBwGE/oRz5XD927eSkNIDZSA77PXCU2uE8r8iUCN3/gsnW6uDUG6liqrW FWyljtX4a26szBimhtijNhoYk2sao6WXZ7CYnZlUQrUppYLV2rSQ3V/y0xrzk8DAspeG 8pRObnLM4ODgQBpRUA2vr+O4Y+l92pEBc7SOSOjCnPIDRVK/MEbeq3IQ+HYqz++YhHlM NdCDJJl3rA1MgjvthEjdiLunzUz9wvhggs5600ALJSUmC9ueqOK0AA76KrCpS3vR83sW bShg== X-Gm-Message-State: APjAAAURU5yfVYqjb1OJPMnGjIWALMVR7tCa/uTnOvc3KjmzBMoYKJkS cuXZQdFBfkjVZNwgceVGlzZoDg== X-Google-Smtp-Source: APXvYqxxa00ksXWVAMu7MOj1wNsydhuB90i8fK4AVjUV17iHPCeSx+1B9vN2QVsrjE84CYpe6Ae5aQ== X-Received: by 2002:aed:2282:: with SMTP id p2mr31575643qtc.334.1556211420824; Thu, 25 Apr 2019 09:57:00 -0700 (PDT) Received: from jkicinski-Precision-T1700.netronome.com ([66.60.152.14]) by smtp.gmail.com with ESMTPSA id d14sm6838903qkg.72.2019.04.25.09.56.58 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Apr 2019 09:57:00 -0700 (PDT) From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, borisp@mellanox.com, aviadye@mellanox.com, davejwatson@fb.com, john.fastabend@gmail.com, daniel@iogearbox.net, alexei.starovoitov@gmail.com, Jakub Kicinski , "Reviewed-by : Simon Horman" Subject: [PATCH net-next 3/4] net/tls: move definition of tls ops into net/tls.h Date: Thu, 25 Apr 2019 09:56:36 -0700 Message-Id: <20190425165637.7924-4-jakub.kicinski@netronome.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190425165637.7924-1-jakub.kicinski@netronome.com> References: <20190425165637.7924-1-jakub.kicinski@netronome.com> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org There seems to be no reason for tls_ops to be defined in netdevice.h which is included in a lot of places. Don't wrap the struct/enum declaration in ifdefs, it trickles down unnecessary ifdefs into driver code. Signed-off-by: Jakub Kicinski Reviewed-by: Reviewed-by: Simon Horman --- include/linux/netdevice.h | 23 +---------------------- include/net/tls.h | 17 +++++++++++++++++ 2 files changed, 18 insertions(+), 22 deletions(-) diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index c46d218a0456..44b47e9df94a 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h @@ -914,34 +914,13 @@ struct xfrmdev_ops { }; #endif -#if IS_ENABLED(CONFIG_TLS_DEVICE) -enum tls_offload_ctx_dir { - TLS_OFFLOAD_CTX_DIR_RX, - TLS_OFFLOAD_CTX_DIR_TX, -}; - -struct tls_crypto_info; -struct tls_context; - -struct tlsdev_ops { - int (*tls_dev_add)(struct net_device *netdev, struct sock *sk, - enum tls_offload_ctx_dir direction, - struct tls_crypto_info *crypto_info, - u32 start_offload_tcp_sn); - void (*tls_dev_del)(struct net_device *netdev, - struct tls_context *ctx, - enum tls_offload_ctx_dir direction); - void (*tls_dev_resync_rx)(struct net_device *netdev, - struct sock *sk, u32 seq, u64 rcd_sn); -}; -#endif - struct dev_ifalias { struct rcu_head rcuhead; char ifalias[]; }; struct devlink; +struct tlsdev_ops; /* * This structure defines the management hooks for network devices. diff --git a/include/net/tls.h b/include/net/tls.h index 20196cb31ecc..41a2ee643fc5 100644 --- a/include/net/tls.h +++ b/include/net/tls.h @@ -277,6 +277,23 @@ struct tls_context { void (*unhash)(struct sock *sk); }; +enum tls_offload_ctx_dir { + TLS_OFFLOAD_CTX_DIR_RX, + TLS_OFFLOAD_CTX_DIR_TX, +}; + +struct tlsdev_ops { + int (*tls_dev_add)(struct net_device *netdev, struct sock *sk, + enum tls_offload_ctx_dir direction, + struct tls_crypto_info *crypto_info, + u32 start_offload_tcp_sn); + void (*tls_dev_del)(struct net_device *netdev, + struct tls_context *ctx, + enum tls_offload_ctx_dir direction); + void (*tls_dev_resync_rx)(struct net_device *netdev, + struct sock *sk, u32 seq, u64 rcd_sn); +}; + struct tls_offload_context_rx { /* sw must be the first member of tls_offload_context_rx */ struct tls_sw_context_rx sw; From patchwork Thu Apr 25 16:56:37 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jakub Kicinski X-Patchwork-Id: 1090999 X-Patchwork-Delegate: davem@davemloft.net Return-Path: X-Original-To: patchwork-incoming-netdev@ozlabs.org Delivered-To: patchwork-incoming-netdev@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; dmarc=none (p=none dis=none) header.from=netronome.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=netronome-com.20150623.gappssmtp.com header.i=@netronome-com.20150623.gappssmtp.com header.b="m+G3cxGg"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44qjyq0CNLz9s7T for ; Fri, 26 Apr 2019 02:57:07 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729029AbfDYQ5F (ORCPT ); Thu, 25 Apr 2019 12:57:05 -0400 Received: from mail-qk1-f194.google.com ([209.85.222.194]:43839 "EHLO mail-qk1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728978AbfDYQ5D (ORCPT ); Thu, 25 Apr 2019 12:57:03 -0400 Received: by mail-qk1-f194.google.com with SMTP id p19so145990qkm.10 for ; Thu, 25 Apr 2019 09:57:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=netronome-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=P8mzb/hMgO2eXJPCB6UEM8MFC5h/lZq2erxntksC36g=; b=m+G3cxGgdn+3AMwXtz95Di5iusBEYfM9BTiY0d5dg+xB1RgEeEFsZIaNerFYwmAg7V 2ZoKDxvnGDoKhdqwM/s/7uB3F4kTSjOLufwM1eUAJeWgr+z+JvJ2H67/eK+JZUJol//R 1p08GHODqXEiV1j1gspkhIs8QJdSM/53vrjK7NRkdD0pEzDmUpoHKNCKNGSMq75Dx58U F5D6wvbWuC9G+DsZqJ4KXFEUrt13NzrtDqavL8DiwON+cXUI00BsPbymGyEOQhsjJHtH oNLIa2kZPJ05nY423438BTj3VZ7uMsG0AuatAAAE360k69KL85BQ/tOVDhQ+inhfeBRi GC4A== 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:mime-version:content-transfer-encoding; bh=P8mzb/hMgO2eXJPCB6UEM8MFC5h/lZq2erxntksC36g=; b=AsN0x6jZxZIQv/Kou9E+L3W8UcPhm1czBha71VwtpmqRsdAWPmhiShiIHZ5MDpdxVA 86Y9CVbhJG0ubwv+Rc3wvUFeUbp2Vgl/k4PN0kHu98+YIE4Un2fjxEQU4zyWqdQgEDi8 IQdc8/pBKkk8kT4ra77YolHJvk6dfvWxXlBJPufie15whnkw0kDSYjxwCMYPXY4u5Sub UYJkxzZH42Pn3FBSnRWkyhjJkFgEyRobxajF7P+MDZ75JTbak4FGKOFmQBj8mh4McO26 b5941Za3GUPlscHBRA//hiXe6P1I7oacQKfWRfG5jlSUuItCTpR1soX3YKCL4Ty1Y0Hk e7dw== X-Gm-Message-State: APjAAAV/KWTh7pUSCJycA0GfpIlJ73K2ccq61AlRgLqUxKYTWPUIh2lB y9ksdvGcI8o90UO6r1gTPCQiOQ== X-Google-Smtp-Source: APXvYqxykzIEO4fOKKENSiiRBP/EZVhkAK8cqRWPQqZbl/Jr952UNGFWGks4n0f4kER7AuMgZdmasQ== X-Received: by 2002:a37:5088:: with SMTP id e130mr29812484qkb.206.1556211422670; Thu, 25 Apr 2019 09:57:02 -0700 (PDT) Received: from jkicinski-Precision-T1700.netronome.com ([66.60.152.14]) by smtp.gmail.com with ESMTPSA id d14sm6838903qkg.72.2019.04.25.09.57.00 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Apr 2019 09:57:02 -0700 (PDT) From: Jakub Kicinski To: davem@davemloft.net Cc: netdev@vger.kernel.org, oss-drivers@netronome.com, borisp@mellanox.com, aviadye@mellanox.com, davejwatson@fb.com, john.fastabend@gmail.com, daniel@iogearbox.net, alexei.starovoitov@gmail.com, Jakub Kicinski , "Reviewed-by : Simon Horman" Subject: [PATCH net-next 4/4] net/tls: byte swap device req TCP seq no upon setting Date: Thu, 25 Apr 2019 09:56:37 -0700 Message-Id: <20190425165637.7924-5-jakub.kicinski@netronome.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20190425165637.7924-1-jakub.kicinski@netronome.com> References: <20190425165637.7924-1-jakub.kicinski@netronome.com> MIME-Version: 1.0 Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org To avoid a sparse warning byteswap the be32 sequence number before it's stored in the atomic value. While at it drop unnecessary brackets and use kernel's u64 type. Signed-off-by: Jakub Kicinski Reviewed-by: Reviewed-by: Simon Horman --- include/net/tls.h | 2 +- net/tls/tls_device.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/include/net/tls.h b/include/net/tls.h index 41a2ee643fc5..39ea62f0c1f6 100644 --- a/include/net/tls.h +++ b/include/net/tls.h @@ -562,7 +562,7 @@ static inline void tls_offload_rx_resync_request(struct sock *sk, __be32 seq) struct tls_context *tls_ctx = tls_get_ctx(sk); struct tls_offload_context_rx *rx_ctx = tls_offload_ctx_rx(tls_ctx); - atomic64_set(&rx_ctx->resync_req, ((((uint64_t)seq) << 32) | 1)); + atomic64_set(&rx_ctx->resync_req, ((u64)ntohl(seq) << 32) | 1); } diff --git a/net/tls/tls_device.c b/net/tls/tls_device.c index cb368efe3567..6686013b4e9e 100644 --- a/net/tls/tls_device.c +++ b/net/tls/tls_device.c @@ -567,7 +567,7 @@ void handle_device_resync(struct sock *sk, u32 seq, u64 rcd_sn) rx_ctx = tls_offload_ctx_rx(tls_ctx); resync_req = atomic64_read(&rx_ctx->resync_req); - req_seq = ntohl(resync_req >> 32) - ((u32)TLS_HEADER_SIZE - 1); + req_seq = (resync_req >> 32) - ((u32)TLS_HEADER_SIZE - 1); is_req_pending = resync_req; if (unlikely(is_req_pending) && req_seq == seq &&