...and the attached document, referred to in the previous mail. :) I
think I posted this recently, but it's small so a repost is no big deal.
--
Jeff Garzik |
Building 1024 | Would you like a Twinkie?
MandrakeSoft |
Network Devices, the Kernel, and You!
Introduction
============
The following is a random collection of documentation regarding
network devices.
struct net_device synchronization rules
=======================================
dev->open:
Locking: Inside rtnl_lock() semaphore.
Sleeping: OK
dev->stop:
Locking: Inside rtnl_lock() semaphore.
Sleeping: OK
dev->do_ioctl:
Locking: Inside rtnl_lock() semaphore.
Sleeping: OK
dev->get_stats:
Locking: Inside dev_base_lock spinlock.
Sleeping: NO
dev->hard_start_xmit:
Locking: Inside dev->xmit_lock spinlock.
Sleeping: NO
dev->tx_timeout:
Locking: Inside dev->xmit_lock spinlock.
Sleeping: NO
dev->set_multicast_list:
Locking: Inside dev->xmit_lock spinlock.
Sleeping: NO