-
Andi Kleen authored
New version of the NETIF_F_LLTX for network devices patch. This allows network drivers to set the NETIF_F_LLTX flag and then do their own locking in start_queue_xmit. This lowers locking overhead in this critical path. The drivers can use try lock if they want and return -1 when the lock wasn't grabbed. In this case the packet will be requeued. For better compatibility this is only done for drivers with LLTX set, others don't give a special meaning to -1. Most of the modern drivers who have a lock around hard_start_xmit can just set this flag. It may be a good idea to convert the spin lock there to a try lock. The only thing that should be audited is that they do enough locking in the set_multicast_list function too, and not also rely on xmit_lock here. Now doesn't move any code around and does things with gotos instead. The loop printk is also still there even for NETIF_F_LLTX For drivers that don't set the new flag nothing changes. Signed-off-by: David S. Miller <davem@davemloft.net>
73d0d56a