From: Kevin Laatz <kevin.laatz@intel.com> To: netdev@vger.kernel.org, ast@kernel.org, daniel@iogearbox.net, bjorn.topel@intel.com, magnus.karlsson@intel.com, jakub.kicinski@netronome.com, jonathan.lemon@gmail.com, saeedm@mellanox.com, maximmi@mellanox.com, stephen@networkplumber.org Cc: bruce.richardson@intel.com, ciara.loftus@intel.com, bpf@vger.kernel.org, intel-wired-lan@lists.osuosl.org, Kevin Laatz <kevin.laatz@intel.com> Subject: [PATCH bpf-next v5 00/11] XDP unaligned chunk placement support Date: Thu, 22 Aug 2019 01:44:16 +0000 [thread overview] Message-ID: <20190822014427.49800-1-kevin.laatz@intel.com> (raw) In-Reply-To: <20190730085400.10376-1-kevin.laatz@intel.com> This patch set adds the ability to use unaligned chunks in the XDP umem. Currently, all chunk addresses passed to the umem are masked to be chunk size aligned (max is PAGE_SIZE). This limits where we can place chunks within the umem as well as limiting the packet sizes that are supported. The changes in this patch set removes these restrictions, allowing XDP to be more flexible in where it can place a chunk within a umem. By relaxing where the chunks can be placed, it allows us to use an arbitrary buffer size and place that wherever we have a free address in the umem. These changes add the ability to support arbitrary frame sizes up to 4k (PAGE_SIZE) and make it easy to integrate with other existing frameworks that have their own memory management systems, such as DPDK. In DPDK, for example, there is already support for AF_XDP with zero-copy. However, with this patch set the integration will be much more seamless. You can find the DPDK AF_XDP driver at: https://git.dpdk.org/dpdk/tree/drivers/net/af_xdp Since we are now dealing with arbitrary frame sizes, we need also need to update how we pass around addresses. Currently, the addresses can simply be masked to 2k to get back to the original address. This becomes less trivial when using frame sizes that are not a 'power of 2' size. This patch set modifies the Rx/Tx descriptor format to use the upper 16-bits of the addr field for an offset value, leaving the lower 48-bits for the address (this leaves us with 256 Terabytes, which should be enough!). We only need to use the upper 16-bits to store the offset when running in unaligned mode. Rather than adding the offset (headroom etc) to the address, we will store it in the upper 16-bits of the address field. This way, we can easily add the offset to the address where we need it, using some bit manipulation and addition, and we can also easily get the original address wherever we need it (for example in i40e_zca_free) by simply masking to get the lower 48-bits of the address field. Note: The mlx5e patch only adds support for the new offset handling. Maxim Mikityanski <maximmi@mellanox.com> is working on an additional patch that enables the unaligned chunks feature (makes mlx5e accept arbitrary frame sizes) which will be added later and applies on top of this patch. The numbers below were recorded with the following set up: - Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz - Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28 (rev 02) - Driver: i40e - Application: xdpsock with l2fwd (single interface) - Turbo disabled in BIOS These are solely for comparing performance with and without the patches. The largest drop was ~1.5% (in zero-copy mode). +-------------------------+-------------+-----------------+-------------+ | Buffer size: 2048 | SKB mode | Zero-copy | Copy | +-------------------------+-------------+-----------------+-------------+ | Aligned (baseline) | 1.25 Mpps | 10.0 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ | Aligned (with patches) | 1.25 Mpps | 9.85 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ | Unaligned | 1.25 Mpps | 9.65 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ This patch set has been applied against commit 0bb52b0dfc88 ("tools: bpftool: add 'bpftool map freeze' subcommand") Structure of the patch set: Patch 1: - Remove unnecessary masking and headroom addition during zero-copy Rx buffer recycling in i40e. This change is required in order for the buffer recycling to work in the unaligned chunk mode. Patch 2: - Remove unnecessary masking and headroom addition during zero-copy Rx buffer recycling in ixgbe. This change is required in order for the buffer recycling to work in the unaligned chunk mode. Patch 3: - Add infrastructure for unaligned chunks. Since we are dealing with unaligned chunks that could potentially cross a physical page boundary, we add checks to keep track of that information. We can later use this information to correctly handle buffers that are placed at an address where they cross a page boundary. This patch also modifies the existing Rx and Tx functions to use the new descriptor format. To handle addresses correctly, we need to mask appropriately based on whether we are in aligned or unaligned mode. Patch 4: - This patch updates the i40e driver to make use of the new descriptor format. Patch 5: - This patch updates the ixgbe driver to make use of the new descriptor format. Patch 6: - This patch updates the mlx5e driver to make use of the new descriptor format. These changes are required to handle the new descriptor format and for unaligned chunks support. Patch 7: - Add flags for umem configuration to libbpf. Since we increase the size of the struct by adding flags, we also need to add the ABI versioning in this patch. Patch 8: - Modify xdpsock application to add a command line option for unaligned chunks Patch 9: - Since we can now run the application in unaligned chunk mode, we need to make sure we recycle the buffers appropriately. Patch 10: - Adds hugepage support to the xdpsock application Patch 11: - Documentation update to include the unaligned chunk scenario. We need to explicitly state that the incoming addresses are only masked in the aligned chunk mode and not the unaligned chunk mode. --- v2: - fixed checkpatch issues - fixed Rx buffer recycling for unaligned chunks in xdpsock - removed unused defines - fixed how chunk_size is calculated in xsk_diag.c - added some performance numbers to cover letter - modified descriptor format to make it easier to retrieve original address - removed patch adding off_t off to the zero copy allocator. This is no longer needed with the new descriptor format. v3: - added patch for mlx5 driver changes needed for unaligned chunks - moved offset handling to new helper function - changed value used for the umem chunk_mask. Now using the new descriptor format to save us doing the calculations in a number of places meaning more of the code is left unchanged while adding unaligned chunk support. v4: - reworked the next_pg_contig field in the xdp_umem_page struct. We now use the low 12 bits of the addr for flags rather than adding an extra field in the struct. - modified unaligned chunks flag define - fixed page_start calculation in __xsk_rcv_memcpy(). - move offset handling to the xdp_umem_get_* functions - modified the len field in xdp_umem_reg struct. We now use 16 bits from this for the flags field. - fixed headroom addition to handle in the mlx5e driver - other minor changes based on review comments v5: - Added ABI versioning in the libbpf patch - Removed bitfields in the xdp_umem_reg struct. Adding new flags field. - Added accessors for getting addr and offset. - Added helper function for adding the offset to the addr. - Fixed conflicts with 'bpf-af-xdp-wakeup' which was merged recently. - Fixed typo in mlx driver patch. - Moved libbpf patch to later in the set (7/11, just before the sample app changes) Kevin Laatz (11): i40e: simplify Rx buffer recycle ixgbe: simplify Rx buffer recycle xsk: add support to allow unaligned chunk placement i40e: modify driver for handling offsets ixgbe: modify driver for handling offsets mlx5e: modify driver for handling offsets libbpf: add flags to umem config samples/bpf: add unaligned chunks mode support to xdpsock samples/bpf: add buffer recycling for unaligned chunks to xdpsock samples/bpf: use hugepages in xdpsock app doc/af_xdp: include unaligned chunk case Documentation/networking/af_xdp.rst | 10 +- drivers/net/ethernet/intel/i40e/i40e_xsk.c | 26 +++-- drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c | 26 +++-- .../net/ethernet/mellanox/mlx5/core/en/xdp.c | 8 +- .../ethernet/mellanox/mlx5/core/en/xsk/rx.c | 3 +- include/net/xdp_sock.h | 75 ++++++++++++++- include/uapi/linux/if_xdp.h | 9 ++ net/xdp/xdp_umem.c | 19 +++- net/xdp/xsk.c | 96 +++++++++++++++---- net/xdp/xsk_diag.c | 2 +- net/xdp/xsk_queue.h | 68 +++++++++++-- samples/bpf/xdpsock_user.c | 61 ++++++++---- tools/include/uapi/linux/if_xdp.h | 9 ++ tools/lib/bpf/Makefile | 5 +- tools/lib/bpf/libbpf.map | 1 + tools/lib/bpf/xsk.c | 33 ++++++- tools/lib/bpf/xsk.h | 27 ++++++ 17 files changed, 384 insertions(+), 94 deletions(-) -- 2.17.1
WARNING: multiple messages have this Message-ID (diff)
From: Kevin Laatz <kevin.laatz@intel.com> To: intel-wired-lan@osuosl.org Subject: [Intel-wired-lan] [PATCH bpf-next v5 00/11] XDP unaligned chunk placement support Date: Thu, 22 Aug 2019 01:44:16 +0000 [thread overview] Message-ID: <20190822014427.49800-1-kevin.laatz@intel.com> (raw) In-Reply-To: <20190730085400.10376-1-kevin.laatz@intel.com> This patch set adds the ability to use unaligned chunks in the XDP umem. Currently, all chunk addresses passed to the umem are masked to be chunk size aligned (max is PAGE_SIZE). This limits where we can place chunks within the umem as well as limiting the packet sizes that are supported. The changes in this patch set removes these restrictions, allowing XDP to be more flexible in where it can place a chunk within a umem. By relaxing where the chunks can be placed, it allows us to use an arbitrary buffer size and place that wherever we have a free address in the umem. These changes add the ability to support arbitrary frame sizes up to 4k (PAGE_SIZE) and make it easy to integrate with other existing frameworks that have their own memory management systems, such as DPDK. In DPDK, for example, there is already support for AF_XDP with zero-copy. However, with this patch set the integration will be much more seamless. You can find the DPDK AF_XDP driver at: https://git.dpdk.org/dpdk/tree/drivers/net/af_xdp Since we are now dealing with arbitrary frame sizes, we need also need to update how we pass around addresses. Currently, the addresses can simply be masked to 2k to get back to the original address. This becomes less trivial when using frame sizes that are not a 'power of 2' size. This patch set modifies the Rx/Tx descriptor format to use the upper 16-bits of the addr field for an offset value, leaving the lower 48-bits for the address (this leaves us with 256 Terabytes, which should be enough!). We only need to use the upper 16-bits to store the offset when running in unaligned mode. Rather than adding the offset (headroom etc) to the address, we will store it in the upper 16-bits of the address field. This way, we can easily add the offset to the address where we need it, using some bit manipulation and addition, and we can also easily get the original address wherever we need it (for example in i40e_zca_free) by simply masking to get the lower 48-bits of the address field. Note: The mlx5e patch only adds support for the new offset handling. Maxim Mikityanski <maximmi@mellanox.com> is working on an additional patch that enables the unaligned chunks feature (makes mlx5e accept arbitrary frame sizes) which will be added later and applies on top of this patch. The numbers below were recorded with the following set up: - Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz - Intel Corporation Ethernet Controller XXV710 for 25GbE SFP28 (rev 02) - Driver: i40e - Application: xdpsock with l2fwd (single interface) - Turbo disabled in BIOS These are solely for comparing performance with and without the patches. The largest drop was ~1.5% (in zero-copy mode). +-------------------------+-------------+-----------------+-------------+ | Buffer size: 2048 | SKB mode | Zero-copy | Copy | +-------------------------+-------------+-----------------+-------------+ | Aligned (baseline) | 1.25 Mpps | 10.0 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ | Aligned (with patches) | 1.25 Mpps | 9.85 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ | Unaligned | 1.25 Mpps | 9.65 Mpps | 1.66 Mpps | +-------------------------+-------------+-----------------+-------------+ This patch set has been applied against commit 0bb52b0dfc88 ("tools: bpftool: add 'bpftool map freeze' subcommand") Structure of the patch set: Patch 1: - Remove unnecessary masking and headroom addition during zero-copy Rx buffer recycling in i40e. This change is required in order for the buffer recycling to work in the unaligned chunk mode. Patch 2: - Remove unnecessary masking and headroom addition during zero-copy Rx buffer recycling in ixgbe. This change is required in order for the buffer recycling to work in the unaligned chunk mode. Patch 3: - Add infrastructure for unaligned chunks. Since we are dealing with unaligned chunks that could potentially cross a physical page boundary, we add checks to keep track of that information. We can later use this information to correctly handle buffers that are placed at an address where they cross a page boundary. This patch also modifies the existing Rx and Tx functions to use the new descriptor format. To handle addresses correctly, we need to mask appropriately based on whether we are in aligned or unaligned mode. Patch 4: - This patch updates the i40e driver to make use of the new descriptor format. Patch 5: - This patch updates the ixgbe driver to make use of the new descriptor format. Patch 6: - This patch updates the mlx5e driver to make use of the new descriptor format. These changes are required to handle the new descriptor format and for unaligned chunks support. Patch 7: - Add flags for umem configuration to libbpf. Since we increase the size of the struct by adding flags, we also need to add the ABI versioning in this patch. Patch 8: - Modify xdpsock application to add a command line option for unaligned chunks Patch 9: - Since we can now run the application in unaligned chunk mode, we need to make sure we recycle the buffers appropriately. Patch 10: - Adds hugepage support to the xdpsock application Patch 11: - Documentation update to include the unaligned chunk scenario. We need to explicitly state that the incoming addresses are only masked in the aligned chunk mode and not the unaligned chunk mode. --- v2: - fixed checkpatch issues - fixed Rx buffer recycling for unaligned chunks in xdpsock - removed unused defines - fixed how chunk_size is calculated in xsk_diag.c - added some performance numbers to cover letter - modified descriptor format to make it easier to retrieve original address - removed patch adding off_t off to the zero copy allocator. This is no longer needed with the new descriptor format. v3: - added patch for mlx5 driver changes needed for unaligned chunks - moved offset handling to new helper function - changed value used for the umem chunk_mask. Now using the new descriptor format to save us doing the calculations in a number of places meaning more of the code is left unchanged while adding unaligned chunk support. v4: - reworked the next_pg_contig field in the xdp_umem_page struct. We now use the low 12 bits of the addr for flags rather than adding an extra field in the struct. - modified unaligned chunks flag define - fixed page_start calculation in __xsk_rcv_memcpy(). - move offset handling to the xdp_umem_get_* functions - modified the len field in xdp_umem_reg struct. We now use 16 bits from this for the flags field. - fixed headroom addition to handle in the mlx5e driver - other minor changes based on review comments v5: - Added ABI versioning in the libbpf patch - Removed bitfields in the xdp_umem_reg struct. Adding new flags field. - Added accessors for getting addr and offset. - Added helper function for adding the offset to the addr. - Fixed conflicts with 'bpf-af-xdp-wakeup' which was merged recently. - Fixed typo in mlx driver patch. - Moved libbpf patch to later in the set (7/11, just before the sample app changes) Kevin Laatz (11): i40e: simplify Rx buffer recycle ixgbe: simplify Rx buffer recycle xsk: add support to allow unaligned chunk placement i40e: modify driver for handling offsets ixgbe: modify driver for handling offsets mlx5e: modify driver for handling offsets libbpf: add flags to umem config samples/bpf: add unaligned chunks mode support to xdpsock samples/bpf: add buffer recycling for unaligned chunks to xdpsock samples/bpf: use hugepages in xdpsock app doc/af_xdp: include unaligned chunk case Documentation/networking/af_xdp.rst | 10 +- drivers/net/ethernet/intel/i40e/i40e_xsk.c | 26 +++-- drivers/net/ethernet/intel/ixgbe/ixgbe_xsk.c | 26 +++-- .../net/ethernet/mellanox/mlx5/core/en/xdp.c | 8 +- .../ethernet/mellanox/mlx5/core/en/xsk/rx.c | 3 +- include/net/xdp_sock.h | 75 ++++++++++++++- include/uapi/linux/if_xdp.h | 9 ++ net/xdp/xdp_umem.c | 19 +++- net/xdp/xsk.c | 96 +++++++++++++++---- net/xdp/xsk_diag.c | 2 +- net/xdp/xsk_queue.h | 68 +++++++++++-- samples/bpf/xdpsock_user.c | 61 ++++++++---- tools/include/uapi/linux/if_xdp.h | 9 ++ tools/lib/bpf/Makefile | 5 +- tools/lib/bpf/libbpf.map | 1 + tools/lib/bpf/xsk.c | 33 ++++++- tools/lib/bpf/xsk.h | 27 ++++++ 17 files changed, 384 insertions(+), 94 deletions(-) -- 2.17.1
next prev parent reply other threads:[~2019-08-22 10:00 UTC|newest] Thread overview: 274+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-06-20 9:09 [PATCH 00/11] XDP unaligned chunk placement support Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-20 9:09 ` [PATCH 01/11] i40e: simplify Rx buffer recycle Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 14:29 ` Björn Töpel 2019-06-24 14:29 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 02/11] ixgbe: " Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 14:30 ` Björn Töpel 2019-06-24 14:30 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 03/11] xdp: add offset param to zero_copy_allocator Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 14:31 ` Björn Töpel 2019-06-24 14:31 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-24 19:23 ` Jakub Kicinski 2019-06-24 19:23 ` [Intel-wired-lan] " Jakub Kicinski 2019-06-25 13:14 ` Laatz, Kevin 2019-06-25 13:14 ` [Intel-wired-lan] " Laatz, Kevin 2019-06-20 9:09 ` [PATCH 04/11] i40e: add offset to zca_free Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 14:32 ` Björn Töpel 2019-06-24 14:32 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 05/11] ixgbe: " Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 14:32 ` Björn Töpel 2019-06-24 14:32 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 06/11] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:29 ` Björn Töpel 2019-06-24 15:29 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 07/11] libbpf: add flags to umem config Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:30 ` Björn Töpel 2019-06-24 15:30 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 08/11] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:31 ` Björn Töpel 2019-06-24 15:31 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 09/11] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:35 ` Björn Töpel 2019-06-24 15:35 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 10/11] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:36 ` Björn Töpel 2019-06-24 15:36 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-06-20 9:09 ` [PATCH 11/11] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-06-20 9:09 ` [Intel-wired-lan] " Kevin Laatz 2019-06-24 15:34 ` Björn Töpel 2019-06-24 15:34 ` [Intel-wired-lan] " =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-07-16 3:06 ` [PATCH v2 00/10] XDP unaligned chunk placement support Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-16 3:06 ` [PATCH v2 01/10] i40e: simplify Rx buffer recycle Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-19 17:19 ` Bowers, AndrewX 2019-07-19 17:19 ` Bowers, AndrewX 2019-07-16 3:06 ` [PATCH v2 02/10] ixgbe: " Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-19 17:20 ` Bowers, AndrewX 2019-07-19 17:20 ` Bowers, AndrewX 2019-07-16 3:06 ` [PATCH v2 03/10] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-19 17:21 ` Bowers, AndrewX 2019-07-19 17:21 ` Bowers, AndrewX 2019-07-16 3:06 ` [PATCH v2 04/10] i40e: modify driver for handling offsets Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-19 17:22 ` Bowers, AndrewX 2019-07-19 17:22 ` Bowers, AndrewX 2019-07-16 3:06 ` [PATCH v2 05/10] ixgbe: " Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-19 17:22 ` Bowers, AndrewX 2019-07-19 17:22 ` Bowers, AndrewX 2019-07-16 3:06 ` [PATCH v2 06/10] libbpf: add flags to umem config Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-16 3:06 ` [PATCH v2 07/10] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-16 3:06 ` [PATCH v2 08/10] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-16 3:06 ` [PATCH v2 09/10] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-16 3:06 ` [PATCH v2 10/10] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-07-16 3:06 ` [Intel-wired-lan] " Kevin Laatz 2019-07-23 21:08 ` [PATCH v2 00/10] XDP unaligned chunk placement support Alexei Starovoitov 2019-07-23 21:08 ` [Intel-wired-lan] " Alexei Starovoitov 2019-07-24 13:25 ` Magnus Karlsson 2019-07-24 13:25 ` Magnus Karlsson 2019-07-25 15:43 ` Jonathan Lemon 2019-07-25 15:43 ` Jonathan Lemon 2019-07-24 5:10 ` [PATCH bpf-next v3 00/11] " Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 01/11] i40e: simplify Rx buffer recycle Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 02/11] ixgbe: " Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 03/11] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-25 2:22 ` Jakub Kicinski 2019-07-25 2:22 ` [Intel-wired-lan] " Jakub Kicinski 2019-07-25 17:01 ` Laatz, Kevin 2019-07-25 17:01 ` [Intel-wired-lan] " Laatz, Kevin 2019-07-25 9:27 ` Maxim Mikityanskiy 2019-07-25 9:27 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-07-25 17:00 ` Laatz, Kevin 2019-07-25 17:00 ` [Intel-wired-lan] " Laatz, Kevin 2019-07-25 10:08 ` Maxim Mikityanskiy 2019-07-25 10:08 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-07-25 15:39 ` Jonathan Lemon 2019-07-25 15:39 ` [Intel-wired-lan] " Jonathan Lemon 2019-07-26 9:47 ` Laatz, Kevin 2019-07-26 9:58 ` Laatz, Kevin 2019-07-24 5:10 ` [PATCH bpf-next v3 04/11] i40e: modify driver for handling offsets Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 05/11] ixgbe: " Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 06/11] mlx5e: " Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-25 10:15 ` Maxim Mikityanskiy 2019-07-25 10:15 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-07-25 17:00 ` Laatz, Kevin 2019-07-25 17:00 ` [Intel-wired-lan] " Laatz, Kevin 2019-07-24 5:10 ` [PATCH bpf-next v3 07/11] libbpf: add flags to umem config Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 08/11] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-25 9:43 ` Maxim Mikityanskiy 2019-07-25 9:43 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-07-25 17:00 ` Laatz, Kevin 2019-07-25 17:00 ` [Intel-wired-lan] " Laatz, Kevin 2019-07-24 5:10 ` [PATCH bpf-next v3 09/11] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 10/11] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-24 5:10 ` [PATCH bpf-next v3 11/11] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-07-24 5:10 ` [Intel-wired-lan] " Kevin Laatz 2019-07-25 15:39 ` [PATCH bpf-next v3 00/11] XDP unaligned chunk placement support Jonathan Lemon 2019-07-25 15:39 ` [Intel-wired-lan] " Jonathan Lemon 2019-07-25 15:56 ` Richardson, Bruce 2019-07-25 15:56 ` [Intel-wired-lan] " Richardson, Bruce 2019-07-25 17:30 ` Jonathan Lemon 2019-07-25 17:30 ` [Intel-wired-lan] " Jonathan Lemon 2019-07-26 8:41 ` Bruce Richardson 2019-07-26 8:41 ` [Intel-wired-lan] " Bruce Richardson 2019-07-30 8:53 ` [PATCH bpf-next v4 " Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 01/11] i40e: simplify Rx buffer recycle Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 02/11] ixgbe: " Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 03/11] libbpf: add flags to umem config Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-31 12:45 ` Björn Töpel 2019-07-31 12:45 ` =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-07-31 14:25 ` Björn Töpel 2019-07-31 14:25 ` =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-08-01 6:59 ` Andrii Nakryiko 2019-08-01 6:59 ` Andrii Nakryiko 2019-08-01 7:34 ` Björn Töpel 2019-08-01 7:34 ` =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-08-02 7:19 ` Andrii Nakryiko 2019-08-02 7:19 ` Andrii Nakryiko 2019-08-02 7:26 ` Björn Töpel 2019-08-02 7:26 ` =?unknown-8bit?q?Bj=C3=B6rn_T=C3=B6pel?= 2019-07-30 8:53 ` [PATCH bpf-next v4 04/11] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-31 18:11 ` Jonathan Lemon 2019-07-31 18:11 ` [Intel-wired-lan] " Jonathan Lemon 2019-07-30 8:53 ` [PATCH bpf-next v4 05/11] i40e: modify driver for handling offsets Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 06/11] ixgbe: " Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 07/11] mlx5e: " Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-31 18:10 ` Jonathan Lemon 2019-07-31 18:10 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-01 10:05 ` Maxim Mikityanskiy 2019-08-01 10:05 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-08-19 14:36 ` Maxim Mikityanskiy 2019-08-19 14:36 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-08-19 14:47 ` Laatz, Kevin 2019-08-19 14:47 ` [Intel-wired-lan] " Laatz, Kevin 2019-07-30 8:53 ` [PATCH bpf-next v4 08/11] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:53 ` [PATCH bpf-next v4 09/11] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-31 18:26 ` Jonathan Lemon 2019-07-31 18:26 ` [Intel-wired-lan] " Jonathan Lemon 2019-07-30 8:53 ` [PATCH bpf-next v4 10/11] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-07-30 8:53 ` [Intel-wired-lan] " Kevin Laatz 2019-07-30 8:54 ` [PATCH bpf-next v4 11/11] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-07-30 8:54 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` Kevin Laatz [this message] 2019-08-22 1:44 ` [Intel-wired-lan] [PATCH bpf-next v5 00/11] XDP unaligned chunk placement support Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 01/11] i40e: simplify Rx buffer recycle Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 02/11] ixgbe: " Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 03/11] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 18:43 ` Jonathan Lemon 2019-08-22 18:43 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-23 13:35 ` Laatz, Kevin 2019-08-23 13:35 ` [Intel-wired-lan] " Laatz, Kevin 2019-08-27 7:36 ` Maxim Mikityanskiy 2019-08-27 7:36 ` [Intel-wired-lan] " Maxim Mikityanskiy 2019-08-22 1:44 ` [PATCH bpf-next v5 04/11] i40e: modify driver for handling offsets Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 05/11] ixgbe: " Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 06/11] mlx5e: " Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 07/11] libbpf: add flags to umem config Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 08/11] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 09/11] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 10/11] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-22 1:44 ` [PATCH bpf-next v5 11/11] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-08-22 1:44 ` [Intel-wired-lan] " Kevin Laatz 2019-08-27 2:25 ` [PATCH bpf-next v6 00/12] XDP unaligned chunk placement support Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-27 2:25 ` [PATCH bpf-next v6 01/12] i40e: simplify Rx buffer recycle Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:37 ` Jonathan Lemon 2019-08-30 15:37 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 02/12] ixgbe: " Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:39 ` Jonathan Lemon 2019-08-30 15:39 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 03/12] xsk: add support to allow unaligned chunk placement Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:41 ` Jonathan Lemon 2019-08-30 15:41 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 04/12] i40e: modify driver for handling offsets Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:42 ` Jonathan Lemon 2019-08-30 15:42 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 05/12] ixgbe: " Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:42 ` Jonathan Lemon 2019-08-30 15:42 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 06/12] mlx5e: " Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:43 ` Jonathan Lemon 2019-08-30 15:43 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 07/12] net/mlx5e: Allow XSK frames smaller than a page Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:45 ` Jonathan Lemon 2019-08-30 15:45 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 08/12] libbpf: add flags to umem config Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:46 ` Jonathan Lemon 2019-08-30 15:46 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 09/12] samples/bpf: add unaligned chunks mode support to xdpsock Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:47 ` Jonathan Lemon 2019-08-30 15:47 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 10/12] samples/bpf: add buffer recycling for unaligned chunks " Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:49 ` Jonathan Lemon 2019-08-30 15:49 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 11/12] samples/bpf: use hugepages in xdpsock app Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:51 ` Jonathan Lemon 2019-08-30 15:51 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-27 2:25 ` [PATCH bpf-next v6 12/12] doc/af_xdp: include unaligned chunk case Kevin Laatz 2019-08-27 2:25 ` [Intel-wired-lan] " Kevin Laatz 2019-08-30 15:51 ` Jonathan Lemon 2019-08-30 15:51 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-30 15:52 ` [PATCH bpf-next v6 00/12] XDP unaligned chunk placement support Jonathan Lemon 2019-08-30 15:52 ` [Intel-wired-lan] " Jonathan Lemon 2019-08-30 23:29 ` Daniel Borkmann 2019-08-30 23:29 ` [Intel-wired-lan] " Daniel Borkmann
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20190822014427.49800-1-kevin.laatz@intel.com \ --to=kevin.laatz@intel.com \ --cc=ast@kernel.org \ --cc=bjorn.topel@intel.com \ --cc=bpf@vger.kernel.org \ --cc=bruce.richardson@intel.com \ --cc=ciara.loftus@intel.com \ --cc=daniel@iogearbox.net \ --cc=intel-wired-lan@lists.osuosl.org \ --cc=jakub.kicinski@netronome.com \ --cc=jonathan.lemon@gmail.com \ --cc=magnus.karlsson@intel.com \ --cc=maximmi@mellanox.com \ --cc=netdev@vger.kernel.org \ --cc=saeedm@mellanox.com \ --cc=stephen@networkplumber.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.