linux/net/batman-adv
Sven Eckelmann 36c1d15311 batman-adv: Set special lockdep classes to avoid lockdep warning
Transmissions over batman-adv devices always start another nested transmission
over devices attached to the batman-adv interface. These devices usually use
the ethernet lockdep class for the tx_queue lock which is also set by default
for all batman-adv devices. Lockdep will detect a nested locking attempt of two
locks with the same class and warn about a possible deadlock.

This is the default and expected behavior and should not alarm the locking
correctness prove mechanism. Therefore, the locks for all netdevice specific tx
queues get a special batman-adv lock class to avoid a false positive for each
transmission.

Reported-by: Linus Luessing <linus.luessing@web.de>
Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
2012-10-29 09:42:32 +01:00
..
bat_algo.h batman-adv: Reformat multiline comments to consistent style 2012-06-20 22:15:33 +02:00
bat_iv_ogm.c batman-adv: split hard_iface struct for each routing protocol 2012-10-29 09:39:05 +01:00
bitarray.c batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
bitarray.h batman-adv: make batadv_test_bit() return 0 or 1 only 2012-09-19 15:49:53 -04:00
bridge_loop_avoidance.c batman-adv: consolidate duplicated primary_if checking code 2012-10-29 09:42:29 +01:00
bridge_loop_avoidance.h batman-adv: Add the backbone gateway list to debugfs 2012-08-23 14:02:41 +02:00
debugfs.c batman-adv: Add the backbone gateway list to debugfs 2012-08-23 14:02:41 +02:00
debugfs.h batman-adv: Remove bat_ prefix from bat_{debugfs, sysfs}.{c, h} 2012-07-01 22:47:22 +02:00
gateway_client.c batman-adv: consolidate duplicated primary_if checking code 2012-10-29 09:42:29 +01:00
gateway_client.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
gateway_common.c batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
gateway_common.h batman-adv: Prefix gateway enum with BATADV_ 2012-07-01 22:47:18 +02:00
hard-interface.c batman-adv: split hard_iface struct for each routing protocol 2012-10-29 09:39:05 +01:00
hard-interface.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
hash.c batman-adv: Remove space before semicolon 2012-07-01 22:47:23 +02:00
hash.h net: Fix (nearly-)kernel-doc comments for various functions 2012-07-10 23:13:45 -07:00
icmp_socket.c batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
icmp_socket.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
Kconfig batman-adv: add bridge loop avoidance compile option 2012-04-11 14:29:00 +02:00
main.c batman-adv: consolidate duplicated primary_if checking code 2012-10-29 09:42:29 +01:00
main.h batman-adv: consolidate duplicated primary_if checking code 2012-10-29 09:42:29 +01:00
Makefile batman-adv: Remove bat_ prefix from bat_{debugfs, sysfs}.{c, h} 2012-07-01 22:47:22 +02:00
originator.c batman-adv: consolidate duplicated primary_if checking code 2012-10-29 09:42:29 +01:00
originator.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
packet.h batman-adv: detect not yet announced clients 2012-08-23 14:20:22 +02:00
ring_buffer.c batman-adv: Prefix main defines with BATADV_ 2012-06-28 08:45:05 +02:00
ring_buffer.h batman-adv: Reformat multiline comments to consistent style 2012-06-20 22:15:33 +02:00
routing.c batman-adv: use check_unicast_packet() in recv_roam_adv() 2012-10-29 09:39:03 +01:00
routing.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
send.c batman-adv: Don't break statements after assignment operator 2012-08-23 14:20:20 +02:00
send.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
soft-interface.c batman-adv: Set special lockdep classes to avoid lockdep warning 2012-10-29 09:42:32 +01:00
soft-interface.h batman-adv: change interface_rx to get orig node 2012-08-23 14:20:22 +02:00
sysfs.c batman-adv: Remove unused define BAT_ATTR_HIF_UINT 2012-10-29 09:42:21 +01:00
sysfs.h batman-adv: Remove bat_ prefix from bat_{debugfs, sysfs}.{c, h} 2012-07-01 22:47:22 +02:00
translation-table.c batman-adv: return proper value in case of hash_add failure 2012-10-29 09:42:31 +01:00
translation-table.h batman-adv: detect not yet announced clients 2012-08-23 14:20:22 +02:00
types.h batman-adv: split hard_iface struct for each routing protocol 2012-10-29 09:39:05 +01:00
unicast.c batman-adv: Reduce accumulated length of simple statements 2012-08-23 14:20:21 +02:00
unicast.h batman-adv: Prefix types structs with batadv_ 2012-07-01 22:47:21 +02:00
vis.c batman-adv: Reduce accumulated length of simple statements 2012-08-23 14:20:21 +02:00
vis.h batman-adv: fix typos in comments 2012-08-23 14:02:45 +02:00