NETIF_F_LLTX 的屬性

來源:互聯網
上載者:User

標籤:add   setup   header   lis   struct   flags   code   網卡   against   

在bond初始化的時候,我們可以看到如下屬性:

/* don‘t acquire bond device‘s netif_tx_lock when transmitting */    bond_dev->features |= NETIF_F_LLTX; 在lo口設定的時候,也可以看到這個屬性:
static void loopback_setup(struct net_device *dev){    dev->mtu        = 64 * 1024;    dev->hard_header_len    = ETH_HLEN;    /* 14    */    dev->addr_len        = ETH_ALEN;    /* 6    */    dev->type        = ARPHRD_LOOPBACK;    /* 0x0001*/    dev->flags        = IFF_LOOPBACK;    dev->priv_flags        |= IFF_LIVE_ADDR_CHANGE | IFF_NO_QUEUE;    netif_keep_dst(dev);    dev->hw_features    = NETIF_F_GSO_SOFTWARE;    dev->features         = NETIF_F_SG | NETIF_F_FRAGLIST        | NETIF_F_GSO_SOFTWARE        | NETIF_F_HW_CSUM        | NETIF_F_RXCSUM        | NETIF_F_SCTP_CRC        | NETIF_F_HIGHDMA        | NETIF_F_LLTX        | NETIF_F_NETNS_LOCAL        | NETIF_F_VLAN_CHALLENGED        | NETIF_F_LOOPBACK;    dev->ethtool_ops    = &loopback_ethtool_ops;    dev->header_ops        = &eth_header_ops;    dev->netdev_ops        = &loopback_ops;    dev->destructor        = loopback_dev_free;}

NETIF_F_LLTX 屬性代表的是,我們在發包的時候,不需要擷取鎖。

而對於非虛擬設備,如實際網卡,則這個屬性一般是不設定的,也就是需要擷取TX的鎖。

不過,也有注釋說後面的驅動最好不要用這個特性:

* LLTX driver (deprecated for hardware drivers)NETIF_F_LLTX should be set in drivers that implement their own locking intransmit path or don‘t need locking at all (e.g. software tunnels).In ndo_start_xmit, it is recommended to use a try_lock and returnNETDEV_TX_LOCKED when the spin lock fails.  The locking should also properlyprotect against other callbacks (the rules you need to find out).Don‘t use it for new drivers.

 

NETIF_F_LLTX 的屬性

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.