Re: [PATCH bpf-next v10 1/5] xsk: Add launch time hardware offload support to XDP Tx metadata

From: Jakub Kicinski
Date: Sat Feb 15 2025 - 14:04:43 EST


On Sat, 15 Feb 2025 11:01:59 -0800 Jakub Kicinski wrote:
> On Fri, 7 Feb 2025 10:19:39 +0800 Song Yoong Siang wrote:
> > Extend the XDP Tx metadata framework so that user can requests launch time
> > hardware offload, where the Ethernet device will schedule the packet for
> > transmission at a pre-determined time called launch time. The value of
> > launch time is communicated from user space to Ethernet driver via
> > launch_time field of struct xsk_tx_metadata.
>
> Acked-by: Jakub Kicinski <kuba@xxxxxxxxxx>

Sorry, I take that back, you haven't regenerated the code after
renaming the flag:

diff --git a/include/uapi/linux/netdev.h b/include/uapi/linux/netdev.h
index fc0aa971d276..b97ff8bbb0c6 100644
--- a/include/uapi/linux/netdev.h
+++ b/include/uapi/linux/netdev.h
@@ -59,13 +59,13 @@ enum netdev_xdp_rx_metadata {
* by the driver.
* @NETDEV_XSK_FLAGS_TX_CHECKSUM: L3 checksum HW offload is supported by the
* driver.
- * @NETDEV_XSK_FLAGS_LAUNCH_TIME: Launch Time HW offload is supported by the
- * driver.
+ * @NETDEV_XSK_FLAGS_TX_LAUNCH_TIME_FIFO: Launch time HW offload is supported
+ * by the driver.
*/
enum netdev_xsk_flags {
NETDEV_XSK_FLAGS_TX_TIMESTAMP = 1,
NETDEV_XSK_FLAGS_TX_CHECKSUM = 2,
- NETDEV_XSK_FLAGS_LAUNCH_TIME = 4,
+ NETDEV_XSK_FLAGS_TX_LAUNCH_TIME_FIFO = 4,
};

enum netdev_queue_type {
diff --git a/tools/include/uapi/linux/netdev.h b/tools/include/uapi/linux/netdev.h
index fc0aa971d276..b97ff8bbb0c6 100644
--- a/tools/include/uapi/linux/netdev.h
+++ b/tools/include/uapi/linux/netdev.h
@@ -59,13 +59,13 @@ enum netdev_xdp_rx_metadata {
* by the driver.
* @NETDEV_XSK_FLAGS_TX_CHECKSUM: L3 checksum HW offload is supported by the
* driver.
- * @NETDEV_XSK_FLAGS_LAUNCH_TIME: Launch Time HW offload is supported by the
- * driver.
+ * @NETDEV_XSK_FLAGS_TX_LAUNCH_TIME_FIFO: Launch time HW offload is supported
+ * by the driver.
*/
enum netdev_xsk_flags {
NETDEV_XSK_FLAGS_TX_TIMESTAMP = 1,
NETDEV_XSK_FLAGS_TX_CHECKSUM = 2,
- NETDEV_XSK_FLAGS_LAUNCH_TIME = 4,
+ NETDEV_XSK_FLAGS_TX_LAUNCH_TIME_FIFO = 4,
};

enum netdev_queue_type {