NETIF_F_LRO
if (!(bond_dev->features & NETIF_F_LRO))
if (aq_cfg->aq_hw_caps->hw_features & NETIF_F_LRO) {
is_lro = features & NETIF_F_LRO;
features &= ~NETIF_F_LRO;
aq_nic->xdp_prog && features & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
if (prog && ndev->features & NETIF_F_LRO) {
ndev->features &= ~NETIF_F_LRO;
NETIF_F_LRO | NETIF_F_TSO | NETIF_F_TSO6;
NETIF_F_LRO | \
NETIF_F_LRO | \
if (bd->netdev->features & NETIF_F_LRO)
netdev->hw_features |= NETIF_F_LRO;
netdev->features &= ~NETIF_F_LRO;
if (bp->dev->features & NETIF_F_LRO)
features &= ~NETIF_F_LRO;
features &= ~NETIF_F_LRO;
bp->dev->hw_features &= ~(NETIF_F_LRO | NETIF_F_GRO_HW);
bp->dev->features &= ~(NETIF_F_LRO | NETIF_F_GRO_HW);
NETIF_F_RXCSUM | NETIF_F_LRO | NETIF_F_GRO | NETIF_F_GRO_HW |
if (dev->features & NETIF_F_LRO)
features &= ~(NETIF_F_LRO | NETIF_F_GRO_HW);
features &= ~NETIF_F_LRO;
else if (features & NETIF_F_LRO)
bp->dev->hw_features &= ~(NETIF_F_LRO | NETIF_F_GRO_HW);
bp->dev->features &= ~(NETIF_F_LRO | NETIF_F_GRO_HW);
dev->hw_features |= NETIF_F_LRO;
dev->features &= ~NETIF_F_LRO;
if (bp->dev->features & NETIF_F_LRO)
bp->dev->hw_features |= NETIF_F_LRO;
bp->dev->hw_features &= ~NETIF_F_LRO;
bp->dev->features &= ~NETIF_F_LRO;
if ((request & NETIF_F_LRO) && !(lio->dev_capability & NETIF_F_LRO))
request &= ~NETIF_F_LRO;
if (!(request & NETIF_F_RXCSUM) && (netdev->features & NETIF_F_LRO) &&
(lio->dev_capability & NETIF_F_LRO))
request &= ~NETIF_F_LRO;
if ((features & NETIF_F_LRO) &&
(lio->dev_capability & NETIF_F_LRO) &&
!(netdev->features & NETIF_F_LRO))
else if (!(features & NETIF_F_LRO) &&
(lio->dev_capability & NETIF_F_LRO) &&
(netdev->features & NETIF_F_LRO))
| NETIF_F_LRO;
| NETIF_F_LRO;
~NETIF_F_LRO);
netdev->features = (lio->dev_capability & ~NETIF_F_LRO);
if (netdev->features & NETIF_F_LRO)
if ((request & NETIF_F_LRO) && !(lio->dev_capability & NETIF_F_LRO))
request &= ~NETIF_F_LRO;
if (!(request & NETIF_F_RXCSUM) && (netdev->features & NETIF_F_LRO) &&
(lio->dev_capability & NETIF_F_LRO))
request &= ~NETIF_F_LRO;
if (!((netdev->features ^ features) & NETIF_F_LRO))
if ((features & NETIF_F_LRO) && (lio->dev_capability & NETIF_F_LRO))
else if (!(features & NETIF_F_LRO) &&
(lio->dev_capability & NETIF_F_LRO))
| NETIF_F_LRO;
| NETIF_F_LRO;
(lio->enc_dev_capability & ~NETIF_F_LRO);
netdev->features = (lio->dev_capability & ~NETIF_F_LRO);
if (netdev->features & NETIF_F_LRO)
if (changed & NETIF_F_LRO) {
!!(features & NETIF_F_LRO),
failed_features |= NETIF_F_LRO;
features &= ~NETIF_F_LRO;
NETIF_F_RXCSUM | NETIF_F_LRO |
hw_features |= NETIF_F_LRO;
bool en = !!(wanted_features & NETIF_F_LRO);
if (!(changed & NETIF_F_LRO))
*failed_features |= NETIF_F_LRO;
features_tmp &= ~NETIF_F_LRO;
!(netdev->features & NETIF_F_LRO))
features &= ~NETIF_F_LRO;
features &= ~NETIF_F_LRO;
if (adapter->xdp_prog && (features & NETIF_F_LRO)) {
features &= ~NETIF_F_LRO;
if (!(features & NETIF_F_LRO)) {
} else if ((changed ^ features) & NETIF_F_LRO) {
netdev->hw_features |= NETIF_F_LRO;
netdev->features |= NETIF_F_LRO;
if (!(features & NETIF_F_LRO)) {
features |= NETIF_F_LRO;
if ((diff & NETIF_F_LRO) && !(features & NETIF_F_LRO))
if (dev->hw_features & NETIF_F_LRO)
if (dev->hw_features & NETIF_F_LRO) {
if (dev->hw_features & NETIF_F_LRO)
if (dev->hw_features & NETIF_F_LRO)
if (dev->hw_features & NETIF_F_LRO)
if (dev->hw_features & NETIF_F_LRO)
eth->netdev[id]->hw_features |= NETIF_F_LRO;
if (features & (NETIF_F_GRO_HW | NETIF_F_LRO)) {
err |= MLX5E_HANDLE_FEATURE(NETIF_F_LRO, set_feature_lro);
err |= MLX5E_HANDLE_FEATURE(NETIF_F_LRO, set_feature_lro);
if (features & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
if (features & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
if (features & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
netdev->vlan_features |= NETIF_F_LRO;
netdev->features &= ~NETIF_F_LRO;
if (netdev->features & NETIF_F_LRO)
netdev->hw_features |= NETIF_F_LRO;
features &= ~NETIF_F_LRO;
if (!((dev->features ^ features) & NETIF_F_LRO))
hw_lro = (features & NETIF_F_LRO) ? NETXEN_NIC_LRO_ENABLED
if (!(features & NETIF_F_LRO) && netxen_send_lro_cleanup(adapter))
features &= ~NETIF_F_LRO;
int hw_lro = (features & NETIF_F_LRO) ? QLCNIC_LRO_ENABLED : 0;
if (!(changed & NETIF_F_LRO))
netdev->features ^= NETIF_F_LRO;
if (netdev->features & NETIF_F_LRO)
netdev->features |= NETIF_F_LRO;
!(netdev->features & NETIF_F_LRO))
if (!(features & NETIF_F_LRO)) {
} else if (changed & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
features &= ~NETIF_F_LRO;
netdev->hw_features |= NETIF_F_LRO;
netdev->features |= NETIF_F_LRO;
ndev->features |= NETIF_F_LRO; /* large receive offload */
NETIF_F_TSO6 | NETIF_F_LRO | \
if (prog && (dev->features & NETIF_F_LRO)) {
dev->features = NETIF_F_LRO;
if ((features & NETIF_F_LRO) && netvsc_xdp_get(nvdev)) {
features ^= NETIF_F_LRO;
if (!(change & NETIF_F_LRO))
if (features & NETIF_F_LRO) {
features ^= NETIF_F_LRO;
net->hw_features |= NETIF_F_LRO;
if (net->features & NETIF_F_LRO) {
NETIF_F_LRO | NETIF_F_RXHASH | NETIF_F_CSUM_MASK | NETIF_F_RXCSUM)
lowerdev_features &= (features | ~NETIF_F_LRO);
NETIF_F_GSO | NETIF_F_TSO | NETIF_F_LRO | \
dev->hw_features |= NETIF_F_LRO;
NETIF_F_LRO |
NETIF_F_LRO |
#define RX_OFFLOADS (NETIF_F_GRO | NETIF_F_LRO)
if (!(dev->features & NETIF_F_LRO))
!(adapter->netdev->features & NETIF_F_LRO))
if ((adapter->netdev->features & NETIF_F_LRO) &&
if (adapter->netdev->features & NETIF_F_LRO) {
NETIF_F_LRO | NETIF_F_HIGHDMA;
NETIF_F_LRO | NETIF_F_GSO_UDP_TUNNEL |
netdev->hw_features &= ~(NETIF_F_LRO);
netdev->hw_enc_features &= ~(NETIF_F_LRO);
features &= ~NETIF_F_LRO;
if (vmxnet3_xdp_enabled(adapter) && (features & NETIF_F_LRO)) {
features &= ~NETIF_F_LRO;
NETIF_F_LRO;
NETIF_F_LRO | NETIF_F_GSO_UDP_TUNNEL |
if (changed & (NETIF_F_RXCSUM | NETIF_F_LRO |
if (features & NETIF_F_LRO)
if (adapter->netdev->features & NETIF_F_LRO) {
adapter->netdev->features &= ~NETIF_F_LRO;
#define NETIF_F_UPPER_DISABLES NETIF_F_LRO
NETIF_F_HIGHDMA | NETIF_F_LRO)
NETIF_F_HIGHDMA | NETIF_F_LRO)
if (features & NETIF_F_LRO) {
features &= ~NETIF_F_LRO;
if ((features & NETIF_F_GRO_HW) && (features & NETIF_F_LRO)) {
features &= ~NETIF_F_LRO;
dev->wanted_features &= ~NETIF_F_LRO;
if (unlikely(dev->features & NETIF_F_LRO))
#define ETH_ALL_FEATURES (NETIF_F_LRO | NETIF_F_HW_VLAN_CTAG_RX | \
if (dev->features & NETIF_F_LRO)
features |= NETIF_F_LRO;