From patchwork Wed Apr 18 04:29:43 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Nikita V. Shirokov" X-Patchwork-Id: 899919 X-Patchwork-Delegate: bpf@iogearbox.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=tehnerd.com Authentication-Results: ozlabs.org; dkim=pass (2048-bit key; unprotected) header.d=tehnerd-com.20150623.gappssmtp.com header.i=@tehnerd-com.20150623.gappssmtp.com header.b="vmFLVgdy"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40Qs7y3SSXz9s1v for ; Wed, 18 Apr 2018 16:06:38 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752974AbeDRGGg (ORCPT ); Wed, 18 Apr 2018 02:06:36 -0400 Received: from mail-pg0-f53.google.com ([74.125.83.53]:41995 "EHLO mail-pg0-f53.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752705AbeDRGFw (ORCPT ); Wed, 18 Apr 2018 02:05:52 -0400 Received: by mail-pg0-f53.google.com with SMTP id e12so347359pgn.9 for ; Tue, 17 Apr 2018 23:05:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tehnerd-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=0MrbnpA+vgzoZjNpNHrzO9Ly1GzZ87s4bRJc3gPlOcw=; b=vmFLVgdygj/WvoCywiz2hJfjizoDlQWOq+1DmzUTUlVoedjKPUCSyRmVxuE98SDL2s F8WdlPobMiNNc6WdwBKeNriw16L1xvMggJlUGzwpLqhQp5lzVGtpmOjM8b9J1HsZ5WEj keDbAniw1NSbiGR3pk6GfYGQWGMkwoD0TsOka4CFcU0EukekLLtr5BixZEnpRqw0sxEd 07CU1iXLyUu9HeH4qwbIYKlNV+O51vfQ71G99mUfrn7luZjrTdNp2qEQdCbW6/ZIVWpn wgYMEjmMms+ezWC0nDCjT6JbsAAWaq5ldMWiTk8NaBhP8N5y4stl9zQqnyS8yuVxSpLf sIvw== 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=0MrbnpA+vgzoZjNpNHrzO9Ly1GzZ87s4bRJc3gPlOcw=; b=D//zEWerMHBmCA52k4I7hEBwGKToEIxrZ+pN6RBLKyl7pl8uvVllOfuS7Y5HMobhRk h6ir1+Yh/DMMDPWT3lMs1NclBLkAiZ7RNA4Wu62tXsspkA8PEhVNo9FBSFc6z+59BXLi qYoH3LPo4Be00kFNowv3jJaJIn4bgxRc6BzjaXyEBhLPtpvlFJY3kJyYZP7nxt4r+8z7 D+sDl9lLJ5ujeYihSXukPJM3E+adaui13zGrW8HDPTvoaqf6sDMsvImVvpvXx/t9gzcb XLML3pxdNTjxjgZzX4Nx7bISRfS0AtFzcLVKgaOani4Z4jPTGwd5pRAbkoxu0PIpgobx MqFQ== X-Gm-Message-State: ALQs6tDLAeV9ibs8ONOEvEo9vHoNMU+dP3g0R5QdGYFWc4xC6reYxg3K XFsaWxkpi+5fon5J9pthfUj9ZA== X-Google-Smtp-Source: AIpwx48zlKYQ/YynDYUvcvlbMEdobPKOqh53WbwhysLKyEmeBaVjbgsgB+CC1r39556zQQN1mgdj/w== X-Received: by 10.99.149.10 with SMTP id p10mr675757pgd.217.1524031551937; Tue, 17 Apr 2018 23:05:51 -0700 (PDT) Received: from maindev.thefacebook.com ([199.201.64.2]) by smtp.gmail.com with ESMTPSA id a6sm799141pfo.157.2018.04.17.23.05.50 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 17 Apr 2018 23:05:51 -0700 (PDT) From: "Nikita V. Shirokov" To: Alexei Starovoitov , Daniel Borkmann , Tariq Toukan Cc: netdev@vger.kernel.org, "Nikita V. Shirokov" Subject: [PATCH bpf-next v2 03/11] bpf: make mlx4 compatible w/ bpf_xdp_adjust_tail Date: Tue, 17 Apr 2018 21:29:43 -0700 Message-Id: <20180418042951.17183-4-tehnerd@tehnerd.com> X-Mailer: git-send-email 2.15.1 In-Reply-To: <20180418042951.17183-1-tehnerd@tehnerd.com> References: <20180418042951.17183-1-tehnerd@tehnerd.com> Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org w/ bpf_xdp_adjust_tail helper xdp's data_end pointer could be changed as well (only "decrease" of pointer's location is going to be supported). changing of this pointer will change packet's size. for mlx4 driver we will just calculate packet's length unconditionally (the same way as it's already being done in mlx5) Acked-by: Alexei Starovoitov Acked-by: Tariq Toukan --- drivers/net/ethernet/mellanox/mlx4/en_rx.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/mellanox/mlx4/en_rx.c b/drivers/net/ethernet/mellanox/mlx4/en_rx.c index 5c613c6663da..efc55feddc5c 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_rx.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_rx.c @@ -775,8 +775,8 @@ int mlx4_en_process_rx_cq(struct net_device *dev, struct mlx4_en_cq *cq, int bud act = bpf_prog_run_xdp(xdp_prog, &xdp); + length = xdp.data_end - xdp.data; if (xdp.data != orig_data) { - length = xdp.data_end - xdp.data; frags[0].page_offset = xdp.data - xdp.data_hard_start; va = xdp.data;