Some driver devices, such as virtio-net, do not directly use dma addr.
For upper-level frameworks such as xdp socket, that need to be aware of
this. So add a new priv_flag IFF_NOT_USE_DMA_ADDR.
Signed-off-by: Xuan Zhuo <xuanzhuo@linux.alibaba.com>
---
include/linux/netdevice.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
index 3202e055b305..2de0a0c455e5 100644
--- a/include/linux/netdevice.h
+++ b/include/linux/netdevice.h
@@ -1596,6 +1596,7 @@ typedef u64 netdev_priv_flags_t;
* @IFF_LIVE_RENAME_OK: rename is allowed while device is up and running
* @IFF_TX_SKB_NO_LINEAR: device/driver is capable of xmitting frames with
* skb_headlen(skb) == 0 (data starts from frag0)
+ * @IFF_NOT_USE_DMA_ADDR: driver not use dma addr directly. such as virtio-net
*/
enum {
IFF_802_1Q_VLAN_BIT,@@ -1630,6 +1631,7 @@ enum {
IFF_L3MDEV_RX_HANDLER_BIT,
IFF_LIVE_RENAME_OK_BIT,
IFF_TX_SKB_NO_LINEAR_BIT,
+ IFF_NOT_USE_DMA_ADDR_BIT,
};
#define __IFF_BIT(bit) ((netdev_priv_flags_t)1 << (bit))@@ -1667,6 +1669,7 @@ enum {
#define IFF_L3MDEV_RX_HANDLER __IFF(L3MDEV_RX_HANDLER)
#define IFF_LIVE_RENAME_OK __IFF(LIVE_RENAME_OK)
#define IFF_TX_SKB_NO_LINEAR __IFF(TX_SKB_NO_LINEAR)
+#define IFF_NOT_USE_DMA_ADDR __IFF(NOT_USE_DMA_ADDR)
/* Specifies the type of the struct net_device::ml_priv pointer */
enum netdev_ml_priv_type {--
2.31.0