Skip to contentSkip to conversation

lockdep: fix false positive

ROSE Applied Ralf Baechle 3 participants 3 messages Jul 12, 2006

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

ROSE network devices are virtual network devices encapsulating ROSE frames into AX.25 which will be sent through an AX.25 device, so form a special "super class" of normal net devices; split their locks off into a separate class since they always nest.

---
 net/rose/af_rose.c |    9 +++++++++
 1 file changed, 9 insertions(+)
net/rose/af_rose.c +9 -0
Index: linux-net/net/rose/af_rose.c
===================================================================
@@ -67,6 +67,14 @@ static struct proto_ops rose_proto_ops;
 ax25_address rose_callsign;
 
 /*
+ * ROSE network devices are virtual network devices encapsulating ROSE
+ * frames into AX.25 which will be sent through an AX.25 device, so form a
+ * special "super class" of normal net devices; split their locks off into a
+ * separate class since they always nest.
+ */
+static struct lock_class_key rose_netdev_xmit_lock_key;
+
+/*
  *	Convert a ROSE address into text.
  */
 const char *rose2asc(const rose_address *addr)
@@ -1515,6 +1523,7 @@ static int __init rose_proto_init(void)
 			free_netdev(dev);
 			goto fail;
 		}
+		lockdep_set_class(&dev->_xmit_lock, &rose_netdev_xmit_lock_key);
 		dev_rose[i] = dev;
 	}
 
Acked-by
#1 lore raw
Quoted 6 lines · Ralf Baechle

ROSE network devices are virtual network devices encapsulating ROSE frames into AX.25 which will be sent through an AX.25 device, so form a special "super class" of normal net devices; split their locks off into a separate class since they always nest.

thanks,

Ingo

maintainer Applied
#2 lore raw
In reply to Ralf Baechle

From: Ralf Baechle <[email protected]>
Date: Tue, 11 Jul 2006 23:13:57 +0100

Quoted 6 lines

ROSE network devices are virtual network devices encapsulating ROSE frames into AX.25 which will be sent through an AX.25 device, so form a special "super class" of normal net devices; split their locks off into a separate class since they always nest.

Applied, thanks.