diff options
author | John W. Linville <linville@tuxdriver.com> | 2010-12-09 14:08:47 (GMT) |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2010-12-09 14:42:10 (GMT) |
commit | b7613370db5ba66ad81e41cd3a5417fde4d5e03c (patch) | |
tree | a7366c84bd9e6b28e3217c3e705e68f1258a56b4 | |
parent | b7ee1d01c5ff3bf2e51c8565ea00823cdbc2a9f3 (diff) | |
download | linux-b7613370db5ba66ad81e41cd3a5417fde4d5e03c.tar.xz |
ath: fix build break with ATH_DBG_WARN_ON_ONCE
Description by Hauke:
"If CONFIG_ATH_DEBUG=y is set ATH_DBG_WARN_ON_ONCE uses WARN_ON_ONCE and
returns something, but if CONFIG_ATH_DEBUG is not set it does not return
anything. Now ATH_DBG_WARN_ON_ONCE is used in the boolean expression in
an if case and is not returning anything and causes a compile error.
CC [M] /drivers/net/wireless/ath/ath9k/main.o
/drivers/net/wireless/ath/ath9k/main.c: In function ‘ath_isr’:
/drivers/net/wireless/ath/ath9k/main.c:769: error: expected expression
before ‘do’
make[5]: *** [/drivers/net/wireless/ath/ath9k/main.o] Error 1
make[4]: *** [/drivers/net/wireless/ath/ath9k] Error 2"
Reported-by: Hauke Mehrtens <hauke@hauke-m.de>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | drivers/net/wireless/ath/ath.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath.h b/drivers/net/wireless/ath/ath.h index 3eb95e2..e43210c 100644 --- a/drivers/net/wireless/ath/ath.h +++ b/drivers/net/wireless/ath/ath.h @@ -272,7 +272,10 @@ ath_dbg(struct ath_common *common, enum ATH_DEBUG dbg_mask, return 0; } #define ATH_DBG_WARN(foo, arg...) do {} while (0) -#define ATH_DBG_WARN_ON_ONCE(foo) do {} while (0) +#define ATH_DBG_WARN_ON_ONCE(foo) ({ \ + int __ret_warn_once = !!(foo); \ + unlikely(__ret_warn_once); \ +}) #endif /* CONFIG_ATH_DEBUG */ |