Message ID | 20120817.090416.563933713934615530.hdoyu@nvidia.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 08/17/2012 09:04 AM, Hiroshi Doyu wrote: > dev_dbg_reatelimited() without DEBUG printed "217078 callbacks > suppressed". This shouldn't print anything without DEBUG. > > Signed-off-by: Hiroshi Doyu <hdoyu@nvidia.com> > Reported-by: Antti Palosaari <crope@iki.fi> > --- > include/linux/device.h | 6 +++++- > 1 files changed, 5 insertions(+), 1 deletions(-) > > diff --git a/include/linux/device.h b/include/linux/device.h > index eb945e1..d4dc26e 100644 > --- a/include/linux/device.h > +++ b/include/linux/device.h > @@ -962,9 +962,13 @@ do { \ > dev_level_ratelimited(dev_notice, dev, fmt, ##__VA_ARGS__) > #define dev_info_ratelimited(dev, fmt, ...) \ > dev_level_ratelimited(dev_info, dev, fmt, ##__VA_ARGS__) > +#if defined(DEBUG) > #define dev_dbg_ratelimited(dev, fmt, ...) \ > dev_level_ratelimited(dev_dbg, dev, fmt, ##__VA_ARGS__) > - > +#else > +#define dev_dbg_ratelimited(dev, fmt, ...) \ > + no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) > +#endif > /* > * Stupid hackaround for existing uses of non-printk uses dev_info > * > NACK. I don't think that's correct behavior. After that patch it kills all output of dev_dbg_ratelimited(). If I use dynamic debugs and order debugs, I expect to see debugs as earlier. I did test module in order to demonstrate problem. Here it is: http://git.linuxtv.org/anttip/media_tree.git/shortlog/refs/heads/dev_dbg_ratelimited There is also file named: test_results.txt It contains 4 test cases: 1) without that patch & without module dynamic debug 2) without that patch & module dynamic debug ordered 3) with that patch & without module dynamic debug 4) with that patch & module dynamic debug ordered regards Antti
diff --git a/include/linux/device.h b/include/linux/device.h index eb945e1..d4dc26e 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -962,9 +962,13 @@ do { \ dev_level_ratelimited(dev_notice, dev, fmt, ##__VA_ARGS__) #define dev_info_ratelimited(dev, fmt, ...) \ dev_level_ratelimited(dev_info, dev, fmt, ##__VA_ARGS__) +#if defined(DEBUG) #define dev_dbg_ratelimited(dev, fmt, ...) \ dev_level_ratelimited(dev_dbg, dev, fmt, ##__VA_ARGS__) - +#else +#define dev_dbg_ratelimited(dev, fmt, ...) \ + no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__) +#endif /* * Stupid hackaround for existing uses of non-printk uses dev_info *
dev_dbg_reatelimited() without DEBUG printed "217078 callbacks suppressed". This shouldn't print anything without DEBUG. Signed-off-by: Hiroshi Doyu <hdoyu@nvidia.com> Reported-by: Antti Palosaari <crope@iki.fi> --- include/linux/device.h | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)