diff options
Diffstat (limited to 'net/netrom')
| -rw-r--r-- | net/netrom/af_netrom.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/net/netrom/af_netrom.c b/net/netrom/af_netrom.c index 672d5f803f8f..1d50f801f181 100644 --- a/net/netrom/af_netrom.c +++ b/net/netrom/af_netrom.c | |||
| @@ -66,6 +66,14 @@ static DEFINE_SPINLOCK(nr_list_lock); | |||
| 66 | static const struct proto_ops nr_proto_ops; | 66 | static const struct proto_ops nr_proto_ops; |
| 67 | 67 | ||
| 68 | /* | 68 | /* |
| 69 | * NETROM network devices are virtual network devices encapsulating NETROM | ||
| 70 | * frames into AX.25 which will be sent through an AX.25 device, so form a | ||
| 71 | * special "super class" of normal net devices; split their locks off into a | ||
| 72 | * separate class since they always nest. | ||
| 73 | */ | ||
| 74 | static struct lock_class_key nr_netdev_xmit_lock_key; | ||
| 75 | |||
| 76 | /* | ||
| 69 | * Socket removal during an interrupt is now safe. | 77 | * Socket removal during an interrupt is now safe. |
| 70 | */ | 78 | */ |
| 71 | static void nr_remove_socket(struct sock *sk) | 79 | static void nr_remove_socket(struct sock *sk) |
| @@ -1405,6 +1413,7 @@ static int __init nr_proto_init(void) | |||
| 1405 | free_netdev(dev); | 1413 | free_netdev(dev); |
| 1406 | goto fail; | 1414 | goto fail; |
| 1407 | } | 1415 | } |
| 1416 | lockdep_set_class(&dev->_xmit_lock, &nr_netdev_xmit_lock_key); | ||
| 1408 | dev_nr[i] = dev; | 1417 | dev_nr[i] = dev; |
| 1409 | } | 1418 | } |
| 1410 | 1419 | ||
