make oldconfig will rebuild these...
[linux-2.4.21-pre4.git] / Documentation / networking / netdevices.txt
1
2 Network Devices, the Kernel, and You!
3
4
5 Introduction
6 ============
7 The following is a random collection of documentation regarding
8 network devices.
9
10
11
12 struct net_device synchronization rules
13 =======================================
14 dev->open:
15         Synchronization: rtnl_lock() semaphore.
16         Context: process
17
18 dev->stop:
19         Synchronization: rtnl_lock() semaphore.
20         Context: process
21         Notes: netif_running() is guaranteed false when this is called
22
23 dev->do_ioctl:
24         Synchronization: rtnl_lock() semaphore.
25         Context: process
26
27 dev->get_stats:
28         Synchronization: dev_base_lock rwlock.
29         Context: nominally process, but don't sleep inside an rwlock
30
31 dev->hard_start_xmit:
32         Synchronization: dev->xmit_lock spinlock.
33         Context: BHs disabled
34
35 dev->tx_timeout:
36         Synchronization: dev->xmit_lock spinlock.
37         Context: BHs disabled
38
39 dev->set_multicast_list:
40         Synchronization: dev->xmit_lock spinlock.
41         Context: BHs disabled
42
43 dev->poll:
44         Synchronization: __LINK_STATE_RX_SCHED bit in dev->state.  See
45                 dev_close code and comments in net/core/dev.c for more info.
46         Context: softirq
47