1
0
Fork 0
alistair23-linux/net/mac80211
Andrey Ryabinin 68920c9732 net/mac80211/debugfs.c: prevent build failure with CONFIG_UBSAN=y
With upcoming CONFIG_UBSAN the following BUILD_BUG_ON in
net/mac80211/debugfs.c starts to trigger:

  BUILD_BUG_ON(hw_flag_names[NUM_IEEE80211_HW_FLAGS] != (void *)0x1);

It seems, that compiler instrumentation causes some code
deoptimizations.  Because of that GCC is not being able to resolve
condition in BUILD_BUG_ON() at compile time.

We could make size of hw_flag_names array unspecified and replace the
condition in BUILD_BUG_ON() with following:

  ARRAY_SIZE(hw_flag_names) != NUM_IEEE80211_HW_FLAGS

That will have the same effect as before (adding new flag without
updating array will trigger build failure) except it doesn't fail with
CONFIG_UBSAN.  As a bonus this patch slightly decreases size of
hw_flag_names array.

Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Cc: Johannes Berg <johannes@sipsolutions.net>
Cc: "David S. Miller" <davem@davemloft.net>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2016-01-20 17:09:18 -08:00
..
Kconfig mac80211: use DECLARE_EWMA 2015-08-14 17:49:53 +02:00
Makefile mac80211: remove event.c 2015-10-14 18:40:26 +02:00
aes_ccm.c mac80211: Switch to new AEAD interface 2015-05-28 11:23:20 +08:00
aes_ccm.h mac80111: Add CCMP-256 cipher 2015-01-27 11:07:35 +01:00
aes_cmac.c mac80211: remove ieee80211_aes_cmac_calculate_k1_k2() 2015-08-13 11:31:45 +02:00
aes_cmac.h mac80111: Add BIP-CMAC-256 cipher 2015-01-27 11:09:13 +01:00
aes_gcm.c mac80211: Switch to new AEAD interface 2015-05-28 11:23:20 +08:00
aes_gcm.h mac80111: Add GCMP and GCMP-256 ciphers 2015-01-27 11:06:09 +01:00
aes_gmac.c mac80211: Switch to new AEAD interface 2015-05-28 11:23:20 +08:00
aes_gmac.h mac80111: Add BIP-GMAC-128 and BIP-GMAC-256 ciphers 2015-01-27 11:10:13 +01:00
agg-rx.c mac80211: allow the driver to advertise A-MSDU within A-MPDU Rx support 2015-09-22 15:21:24 +02:00
agg-tx.c mac80211: always set the buf_size in AddBA req to 64 2015-11-20 11:39:40 +01:00
cfg.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
chan.c mac80211: upgrade BW of TDLS peers when possible 2015-07-17 15:38:12 +02:00
debug.h mac80211: 802.11p OCB mode support 2014-11-04 13:18:21 +01:00
debugfs.c net/mac80211/debugfs.c: prevent build failure with CONFIG_UBSAN=y 2016-01-20 17:09:18 -08:00
debugfs.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
debugfs_key.c mac80211: allow writing TX PN in debugfs 2015-09-29 15:56:50 +02:00
debugfs_key.h mac80211: support separate default keys 2010-12-13 15:23:29 -05:00
debugfs_netdev.c mac80211: remove last_beacon/ave_beacon debugfs files 2015-09-22 15:21:25 +02:00
debugfs_netdev.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
debugfs_sta.c mac80211: move station statistics into sub-structs 2015-10-21 10:08:22 +02:00
debugfs_sta.h
driver-ops.c mac80211: document sleep requirements for channel context ops 2015-11-03 11:15:48 +01:00
driver-ops.h mac80211: document sleep requirements for channel context ops 2015-11-03 11:15:48 +01:00
ethtool.c mac80211: move station statistics into sub-structs 2015-10-21 10:08:22 +02:00
ht.c mac80211: add VHT support for IBSS 2015-03-30 10:48:26 +02:00
ibss.c mac80211: Allow a STA to join an IBSS with 80+80 MHz channel 2015-12-04 14:43:32 +01:00
ieee80211_i.h Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
iface.c mac80211: don't teardown sdata on sdata stop 2015-12-02 22:27:27 +01:00
key.c mac80211: add atomic uploaded keys iterator 2015-12-04 14:43:32 +01:00
key.h mac80211: remove key TX/RX counter 2015-07-17 15:38:01 +02:00
led.c mac80211: fix throughput LED trigger 2015-05-11 19:16:04 +02:00
led.h mac80211: make LED triggering depend on activation 2015-05-05 14:21:56 +02:00
main.c mac80211: rewrite remain-on-channel logic 2015-12-04 14:43:32 +01:00
mesh.c mac80211: TDLS: add proper HT-oper IE 2015-11-03 10:42:47 +01:00
mesh.h mac80211: make ieee80211_new_mesh_header return unsigned 2015-10-05 17:54:16 +02:00
mesh_hwmp.c mac80211: move station statistics into sub-structs 2015-10-21 10:08:22 +02:00
mesh_pathtbl.c mac80211: mesh: print MAC address instead of pointer 2015-12-04 14:43:32 +01:00
mesh_plink.c mac80211: fix crash on mesh local link ID generation with VIFs 2015-11-03 10:43:40 +01:00
mesh_ps.c mac80211: mesh: separate plid and aid concepts 2015-07-17 15:47:11 +02:00
mesh_sync.c mac80211: move mesh related station fields to own struct 2015-07-17 15:38:06 +02:00
michael.c
michael.h mac80211: fix some missing includes 2014-04-09 14:49:43 +02:00
mlme.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
ocb.c mac80211: move station statistics into sub-structs 2015-10-21 10:08:22 +02:00
offchannel.c mac80211: handle HW ROC expired properly 2015-12-07 11:06:37 +01:00
pm.c mac80211: don't reconfigure sched scan in case of wowlan 2015-11-03 10:42:05 +01:00
rate.c mac80211: further improve "no supported rates" warning 2015-11-03 10:56:42 +01:00
rate.h mac80211: deinline rate_control_rate_init, rate_control_rate_update 2015-07-17 15:50:02 +02:00
rc80211_minstrel.c mac80211: fix invalid read in minstrel_sort_best_tp_rates() 2015-08-13 13:52:34 +02:00
rc80211_minstrel.h mac80211: add standard deviation to Minstrel stats 2015-04-01 20:44:33 +02:00
rc80211_minstrel_debugfs.c mac80211: minstrel[_ht]: remove non-ascii debugfs characters 2015-09-29 15:56:47 +02:00
rc80211_minstrel_ht.c mac80211: minstrel_ht: handle peers in dynamic SMPS 2015-07-17 15:38:20 +02:00
rc80211_minstrel_ht.h mac80211: add max lossless throughput per rate 2015-04-01 20:44:32 +02:00
rc80211_minstrel_ht_debugfs.c mac80211: minstrel[_ht]: remove non-ascii debugfs characters 2015-09-29 15:56:47 +02:00
rx.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
scan.c mac80211: do not actively scan DFS channels 2015-12-02 22:27:53 +01:00
spectmgmt.c mac80211: remove unused variable in ieee80211_parse_ch_switch_ie() 2014-12-17 15:45:17 +01:00
sta_info.c mac80211: add atomic uploaded keys iterator 2015-12-04 14:43:32 +01:00
sta_info.h mac80211: add atomic uploaded keys iterator 2015-12-04 14:43:32 +01:00
status.c Here's another set of patches for the current cycle: 2015-10-22 07:28:41 -07:00
tdls.c mac80211: TDLS: add proper HT-oper IE 2015-11-03 10:42:47 +01:00
tkip.c mac80211: fix checkpatch errors 2013-12-18 10:33:06 +01:00
tkip.h mac80211: fix TKIP races, make API easier to use 2011-07-08 11:11:19 -04:00
trace.c mac80211: Move message tracepoints to their own header 2015-04-07 12:32:09 -04:00
trace.h mac80211: allow the driver to send EOSP when needed 2015-12-04 14:43:32 +01:00
trace_msg.h mac80211: Move message tracepoints to their own header 2015-04-07 12:32:09 -04:00
tx.c mac80211: properly free TX skbs when monitor TX fails 2015-12-04 14:43:32 +01:00
util.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2015-12-17 22:08:28 -05:00
vht.c mac80211: handle width changes from opmode notification IE in beacon 2015-12-15 13:16:47 +01:00
wep.c mac80211: move WEP tailroom size check 2015-05-11 14:51:29 +02:00
wep.h mac80211: move RX WEP weak IV counting 2012-03-13 14:54:16 -04:00
wme.c mac80211: synchronously reserve TID per station 2014-11-19 18:45:36 +01:00
wme.h mac80211: add WMM admission control support 2014-10-22 10:42:09 +02:00
wpa.c mac80211: remove event.c 2015-10-14 18:40:26 +02:00
wpa.h mac80111: Add BIP-GMAC-128 and BIP-GMAC-256 ciphers 2015-01-27 11:10:13 +01:00