diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-11-25 11:46:19 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-12-21 18:38:52 -0500 |
commit | 47846c9b0c10808d9337d2e7d09361f3e0a0a71a (patch) | |
tree | 8e5d0dbf3309b7868fa73a888f9561ffea1580e3 /net/mac80211/driver-trace.h | |
parent | abe60632f311d515b082b450504ee24006023951 (diff) |
mac80211: reduce reliance on netdev
For bluetooth 3, we will most likely not have
a netdev for a virtual interface (sdata), so
prepare for that by reducing the reliance on
having a netdev. This patch moves the name
and address fields into the sdata struct and
uses them from there all over. Some work is
needed to keep them sync'ed, but that's not
a lot of work and in slow paths anyway.
In doing so, this also reduces the number of
pointer dereferences in many places, because
of things like sdata->dev->dev_addr becoming
sdata->vif.addr.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/driver-trace.h')
-rw-r--r-- | net/mac80211/driver-trace.h | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/net/mac80211/driver-trace.h b/net/mac80211/driver-trace.h index ee94ea0c67e9..7b155b947209 100644 --- a/net/mac80211/driver-trace.h +++ b/net/mac80211/driver-trace.h | |||
@@ -70,11 +70,10 @@ TRACE_EVENT(drv_stop, | |||
70 | 70 | ||
71 | TRACE_EVENT(drv_add_interface, | 71 | TRACE_EVENT(drv_add_interface, |
72 | TP_PROTO(struct ieee80211_local *local, | 72 | TP_PROTO(struct ieee80211_local *local, |
73 | const u8 *addr, | ||
74 | struct ieee80211_vif *vif, | 73 | struct ieee80211_vif *vif, |
75 | int ret), | 74 | int ret), |
76 | 75 | ||
77 | TP_ARGS(local, addr, vif, ret), | 76 | TP_ARGS(local, vif, ret), |
78 | 77 | ||
79 | TP_STRUCT__entry( | 78 | TP_STRUCT__entry( |
80 | LOCAL_ENTRY | 79 | LOCAL_ENTRY |
@@ -86,7 +85,7 @@ TRACE_EVENT(drv_add_interface, | |||
86 | TP_fast_assign( | 85 | TP_fast_assign( |
87 | LOCAL_ASSIGN; | 86 | LOCAL_ASSIGN; |
88 | VIF_ASSIGN; | 87 | VIF_ASSIGN; |
89 | memcpy(__entry->addr, addr, 6); | 88 | memcpy(__entry->addr, vif->addr, 6); |
90 | __entry->ret = ret; | 89 | __entry->ret = ret; |
91 | ), | 90 | ), |
92 | 91 | ||
@@ -97,10 +96,9 @@ TRACE_EVENT(drv_add_interface, | |||
97 | ); | 96 | ); |
98 | 97 | ||
99 | TRACE_EVENT(drv_remove_interface, | 98 | TRACE_EVENT(drv_remove_interface, |
100 | TP_PROTO(struct ieee80211_local *local, | 99 | TP_PROTO(struct ieee80211_local *local, struct ieee80211_vif *vif), |
101 | const u8 *addr, struct ieee80211_vif *vif), | ||
102 | 100 | ||
103 | TP_ARGS(local, addr, vif), | 101 | TP_ARGS(local, vif), |
104 | 102 | ||
105 | TP_STRUCT__entry( | 103 | TP_STRUCT__entry( |
106 | LOCAL_ENTRY | 104 | LOCAL_ENTRY |
@@ -111,7 +109,7 @@ TRACE_EVENT(drv_remove_interface, | |||
111 | TP_fast_assign( | 109 | TP_fast_assign( |
112 | LOCAL_ASSIGN; | 110 | LOCAL_ASSIGN; |
113 | VIF_ASSIGN; | 111 | VIF_ASSIGN; |
114 | memcpy(__entry->addr, addr, 6); | 112 | memcpy(__entry->addr, vif->addr, 6); |
115 | ), | 113 | ), |
116 | 114 | ||
117 | TP_printk( | 115 | TP_printk( |