From patchwork Wed Apr 18 04:29:46 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: 899917 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="Si7IQikg"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 40Qs7s0Xd8z9s1v for ; Wed, 18 Apr 2018 16:06:33 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752944AbeDRGGa (ORCPT ); Wed, 18 Apr 2018 02:06:30 -0400 Received: from mail-pg0-f48.google.com ([74.125.83.48]:40418 "EHLO mail-pg0-f48.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752744AbeDRGFz (ORCPT ); Wed, 18 Apr 2018 02:05:55 -0400 Received: by mail-pg0-f48.google.com with SMTP id e9so350512pgr.7 for ; Tue, 17 Apr 2018 23:05:55 -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=/gG4iQ5cbzf6CSVOTZ8nCgPWmZ1m7EEI4eXPMDdsEhQ=; b=Si7IQikgQJjZ+R0UfeT5odoP8xw/+bVed7suesYw0URQjrQL0yymRmhLHwqnAs/4fD hFdomkverAZJvjMO7WED+kyZepQA0IWgjzJ05fml9Gzocc7F/TpIGa4IRbYnmQFGkQMU euUN5nnrgyn3/PZbdVGx0z6U26ucRh5o1uq2RnIiz+p/0GEw0OiPeUvzxsa9D6I9iIyq kyU2zueVH17x1myACd7XmomNBMaLRrRsqFeG2kIyVc86soIl1EeVh0rOhHkvAlRw15p5 kkk21VBUrwyG5Jy7NLmG/AS+LDG6J9HeLQY7Ma0ku8A/Dw4QFHgsmJMKpCVylNt+nq/n 49dg== 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=/gG4iQ5cbzf6CSVOTZ8nCgPWmZ1m7EEI4eXPMDdsEhQ=; b=ihUQGfSea2bnPmGUlhRDtbtzVvCp9owqChOdW1XhT9bCdF+fIEOb6e9UxXSFAqEKXi RGAhmsw/r/Cnx68mp4oFp6egCrx4ye2qj07J2UQSU8qKuqSswaHojHmj8YwSeC+eFsFU cMZHaib5RFK13SDhwyKqgT2eaaFFLaNYhKS9V75NZ/nChTIuuIvV2CP/aDyquKNldEpE PAQH5e7ToOke5EhW72xBKkEyM12K07kNNS2097qFKi64GBYw/fuL3UMUIz5Xy23hIE5X GUPJiyUxzmmxNC4cE0eK4Fy07JfBQNjcwf/a3Z439C0gWFQwLiGtNT2Dhr8JKX7aSMjb XyVw== X-Gm-Message-State: ALQs6tCISvjdiEG2ahuLCjr6qy/65TTget2EfmnPvvjI2AfROL0KNRo7 56b+UINpDBNRR868PCKS8scaCw== X-Google-Smtp-Source: AIpwx4/tzxb5d//MNvrsM6kyxj2NJg3sEzFcfGyKIFkOURTWhQ4OPz2TzNUrO+fc1Pnr7vKfVw789Q== X-Received: by 10.99.121.194 with SMTP id u185mr667636pgc.409.1524031555163; Tue, 17 Apr 2018 23:05:55 -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.54 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Tue, 17 Apr 2018 23:05:54 -0700 (PDT) From: "Nikita V. Shirokov" To: Alexei Starovoitov , Daniel Borkmann , Jakub Kicinski Cc: netdev@vger.kernel.org, "Nikita V. Shirokov" Subject: [PATCH bpf-next v2 06/11] bpf: make netronome nfp compatible w/ bpf_xdp_adjust_tail Date: Tue, 17 Apr 2018 21:29:46 -0700 Message-Id: <20180418042951.17183-7-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 nfp driver we will just calculate packet's length unconditionally Acked-by: Alexei Starovoitov Acked-by: Jakub Kicinski --- drivers/net/ethernet/netronome/nfp/nfp_net_common.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c index 1eb6549f2a54..d9111c077699 100644 --- a/drivers/net/ethernet/netronome/nfp/nfp_net_common.c +++ b/drivers/net/ethernet/netronome/nfp/nfp_net_common.c @@ -1722,7 +1722,7 @@ static int nfp_net_rx(struct nfp_net_rx_ring *rx_ring, int budget) act = bpf_prog_run_xdp(xdp_prog, &xdp); - pkt_len -= xdp.data - orig_data; + pkt_len = xdp.data_end - xdp.data; pkt_off += xdp.data - orig_data; switch (act) {