From patchwork Wed Apr 17 19:52:55 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Jonathan Lemon X-Patchwork-Id: 1087176 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=fail (p=none dis=none) header.from=gmail.com Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 44ktFT42hWz9s5c for ; Thu, 18 Apr 2019 05:53:01 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1733201AbfDQTw7 convert rfc822-to-8bit (ORCPT ); Wed, 17 Apr 2019 15:52:59 -0400 Received: from mx0a-00082601.pphosted.com ([67.231.145.42]:49624 "EHLO mx0a-00082601.pphosted.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1729291AbfDQTw7 (ORCPT ); Wed, 17 Apr 2019 15:52:59 -0400 Received: from pps.filterd (m0109334.ppops.net [127.0.0.1]) by mx0a-00082601.pphosted.com (8.16.0.27/8.16.0.27) with SMTP id x3HJlxvK018467 for ; Wed, 17 Apr 2019 12:52:58 -0700 Received: from maileast.thefacebook.com ([199.201.65.23]) by mx0a-00082601.pphosted.com with ESMTP id 2rx0t2t7vm-2 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Wed, 17 Apr 2019 12:52:58 -0700 Received: from mx-out.facebook.com (2620:10d:c0a1:3::13) by mail.thefacebook.com (2620:10d:c021:18::176) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA) id 15.1.1713.5; Wed, 17 Apr 2019 12:52:57 -0700 Received: by devvm34215.prn1.facebook.com (Postfix, from userid 172786) id B8495212F1004; Wed, 17 Apr 2019 12:52:55 -0700 (PDT) Smtp-Origin-Hostprefix: devvm From: Jonathan Lemon Smtp-Origin-Hostname: devvm34215.prn1.facebook.com To: CC: , , Smtp-Origin-Cluster: prn1c35 Subject: [PATCH net-next] xsk: Have xsk_umem_peek_addr_rq() return chunk-aligned handles. Date: Wed, 17 Apr 2019 12:52:55 -0700 Message-ID: <20190417195255.2800907-1-jonathan.lemon@gmail.com> X-Mailer: git-send-email 2.17.1 MIME-Version: 1.0 X-FB-Internal: Safe X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-04-17_09:, , signatures=0 X-Proofpoint-Spam-Reason: safe X-FB-Internal: Safe Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org xkq_peek_addr() returns chunk-aligned handles, so have the rq behave the same way. Clean up callsites. Signed-off-by: Jonathan Lemon Cc: Björn Töpel Cc: Maxim Mikityanskiy Cc: netdev@vger.kernel.org Acked-by: Björn Töpel --- drivers/net/ethernet/intel/i40e/i40e_xsk.c | 2 -- drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c | 2 -- drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c | 2 +- include/net/xdp_sock.h | 2 +- 4 files changed, 2 insertions(+), 6 deletions(-) diff --git a/drivers/net/ethernet/intel/i40e/i40e_xsk.c b/drivers/net/ethernet/intel/i40e/i40e_xsk.c index d28b629afc8a..d2e212d007c3 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_xsk.c +++ b/drivers/net/ethernet/intel/i40e/i40e_xsk.c @@ -285,8 +285,6 @@ static bool i40e_alloc_buffer_slow_zc(struct i40e_ring *rx_ring, return false; } - handle &= rx_ring->xsk_umem->chunk_mask; - hr = umem->headroom + XDP_PACKET_HEADROOM; bi->dma = xdp_umem_get_dma(umem, handle); diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c index 582d83d35f7e..fc5ca35b4dbf 100644 --- a/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c +++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c @@ -343,8 +343,6 @@ static bool ixgbe_alloc_buffer_slow_zc(struct ixgbe_ring *rx_ring, return false; } - handle &= rx_ring->xsk_umem->chunk_mask; - hr = umem->headroom + XDP_PACKET_HEADROOM; bi->dma = xdp_umem_get_dma(umem, handle); diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c index 61d75a7b3ce2..2f0b5fd1ee97 100644 --- a/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c +++ b/drivers/net/ethernet/mellanox/mlx5/core/en/xsk/rx.c @@ -309,7 +309,7 @@ int mlx5e_xsk_page_alloc_umem(struct mlx5e_rq *rq, static inline void mlx5e_xsk_recycle_frame(struct mlx5e_rq *rq, u64 handle) { - xsk_umem_fq_reuse(rq->umem, handle & rq->umem->chunk_mask); + xsk_umem_fq_reuse(rq->umem, handle); } /* XSKRQ uses pages from UMEM, they must not be released. They are returned to diff --git a/include/net/xdp_sock.h b/include/net/xdp_sock.h index 7ebcb62fedf1..9d97ae73a287 100644 --- a/include/net/xdp_sock.h +++ b/include/net/xdp_sock.h @@ -118,7 +118,7 @@ static inline u64 *xsk_umem_peek_addr_rq(struct xdp_umem *umem, u64 *addr) if (!rq->length) return xsk_umem_peek_addr(umem, addr); - *addr = rq->handles[rq->length - 1]; + *addr = rq->handles[rq->length - 1] & umem->chunk_mask; return addr; }