From: "John W. Linville" <linville@tuxdriver.com>
To: Johannes Berg <johannes@sipsolutions.net>
Cc: linux-wireless@vger.kernel.org, Hauke Mehrtens <hauke@hauke-m.de>,
"Luis R. Rodriguez" <lrodriguez@atheros.com>,
Ben Greear <greearb@candelatech.com>
Subject: Re: [PATCH] ath: fix build break with ATH_DBG_WARN_ON_ONCE
Date: Thu, 9 Dec 2010 09:42:55 -0500 [thread overview]
Message-ID: <20101209144254.GA2339@tuxdriver.com> (raw)
In-Reply-To: <1291904272.3540.10.camel@jlt3.sipsolutions.net>
On Thu, Dec 09, 2010 at 03:17:52PM +0100, Johannes Berg wrote:
> On Thu, 2010-12-09 at 09:12 -0500, John W. Linville wrote:
>
> > diff --git a/drivers/net/wireless/ath/ath.h b/drivers/net/wireless/ath/ath.h
> > index 3eb95e2..45d4d91 100644
> > --- a/drivers/net/wireless/ath/ath.h
> > +++ b/drivers/net/wireless/ath/ath.h
> > @@ -272,7 +272,7 @@ 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) ({ 0; })
>
> That'll fix the build error, but wouldn't you need (foo) for correctness
> instead?
Well, true -- that was too simple. Unfortunately (foo) gives warnings
when the return code is not checked.
John
---
>From b7613370db5ba66ad81e41cd3a5417fde4d5e03c Mon Sep 17 00:00:00 2001
From: John W. Linville <linville@tuxdriver.com>
Date: Thu, 9 Dec 2010 09:08:47 -0500
Subject: [PATCH] ath: fix build break with ATH_DBG_WARN_ON_ONCE
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
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>
---
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 */
--
1.7.3.2
--
John W. Linville Someday the world will need a hero, and you
linville@tuxdriver.com might be all we have. Be ready.
prev parent reply other threads:[~2010-12-09 14:45 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-09 13:47 Compile problem in ath9k with ATH_DBG_WARN_ON_ONCE Hauke Mehrtens
2010-12-09 14:12 ` [PATCH] ath: fix build break " John W. Linville
2010-12-09 14:17 ` Johannes Berg
2010-12-09 14:42 ` John W. Linville [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20101209144254.GA2339@tuxdriver.com \
--to=linville@tuxdriver.com \
--cc=greearb@candelatech.com \
--cc=hauke@hauke-m.de \
--cc=johannes@sipsolutions.net \
--cc=linux-wireless@vger.kernel.org \
--cc=lrodriguez@atheros.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.