linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: poma <pomidorabelisima@gmail.com>
To: Hiroshi Doyu <hdoyu@nvidia.com>
Cc: "linux-media@vger.kernel.org" <linux-media@vger.kernel.org>,
	jwboyer@fedora, devel@lists.fedoraproject.org,
	kernel@lists.fedoraproject.org
Subject: Re: [v3 1/1] driver-core: Shut up dev_dbg_reatelimited() without DEBUG
Date: Mon, 01 Oct 2012 15:09:32 +0200	[thread overview]
Message-ID: <5069960C.8020507@gmail.com> (raw)
In-Reply-To: <20120904.074040.1817050383890381031.hdoyu@nvidia.com>

[-- Attachment #1: Type: text/plain, Size: 3689 bytes --]

On 09/04/2012 06:40 AM, Hiroshi Doyu wrote:
> dev_dbg_reatelimited() without DEBUG printed "217078 callbacks
> suppressed". This shouldn't print anything without DEBUG.
> 
> With CONFIG_DYNAMIC_DEBUG, the print should be configured as expected.
> 
> Signed-off-by: Hiroshi Doyu <hdoyu@nvidia.com>
> Reported-by: Hin-Tak Leung <htl10@users.sourceforge.net>
> Tested-by: Antti Palosaari <crope@iki.fi>
> Tested-by: Hin-Tak Leung <htl10@users.sourceforge.net>
> Acked-by: Hin-Tak Leung <htl10@users.sourceforge.net>
> ---
>  include/linux/device.h |   62 +++++++++++++++++++++++++++++------------------
>  1 files changed, 38 insertions(+), 24 deletions(-)
> 
> diff --git a/include/linux/device.h b/include/linux/device.h
> index 9648331..bb6ffcb 100644
> --- a/include/linux/device.h
> +++ b/include/linux/device.h
> @@ -932,6 +932,32 @@ int _dev_info(const struct device *dev, const char *fmt, ...)
>  
>  #endif
>  
> +/*
> + * Stupid hackaround for existing uses of non-printk uses dev_info
> + *
> + * Note that the definition of dev_info below is actually _dev_info
> + * and a macro is used to avoid redefining dev_info
> + */
> +
> +#define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
> +
> +#if defined(CONFIG_DYNAMIC_DEBUG)
> +#define dev_dbg(dev, format, ...)		     \
> +do {						     \
> +	dynamic_dev_dbg(dev, format, ##__VA_ARGS__); \
> +} while (0)
> +#elif defined(DEBUG)
> +#define dev_dbg(dev, format, arg...)		\
> +	dev_printk(KERN_DEBUG, dev, format, ##arg)
> +#else
> +#define dev_dbg(dev, format, arg...)				\
> +({								\
> +	if (0)							\
> +		dev_printk(KERN_DEBUG, dev, format, ##arg);	\
> +	0;							\
> +})
> +#endif
> +
>  #define dev_level_ratelimited(dev_level, dev, fmt, ...)			\
>  do {									\
>  	static DEFINE_RATELIMIT_STATE(_rs,				\
> @@ -955,33 +981,21 @@ 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(CONFIG_DYNAMIC_DEBUG) || defined(DEBUG)
>  #define dev_dbg_ratelimited(dev, fmt, ...)				\
> -	dev_level_ratelimited(dev_dbg, dev, fmt, ##__VA_ARGS__)
> -
> -/*
> - * Stupid hackaround for existing uses of non-printk uses dev_info
> - *
> - * Note that the definition of dev_info below is actually _dev_info
> - * and a macro is used to avoid redefining dev_info
> - */
> -
> -#define dev_info(dev, fmt, arg...) _dev_info(dev, fmt, ##arg)
> -
> -#if defined(CONFIG_DYNAMIC_DEBUG)
> -#define dev_dbg(dev, format, ...)		     \
> -do {						     \
> -	dynamic_dev_dbg(dev, format, ##__VA_ARGS__); \
> +do {									\
> +	static DEFINE_RATELIMIT_STATE(_rs,				\
> +				      DEFAULT_RATELIMIT_INTERVAL,	\
> +				      DEFAULT_RATELIMIT_BURST);		\
> +	DEFINE_DYNAMIC_DEBUG_METADATA(descriptor, fmt);			\
> +	if (unlikely(descriptor.flags & _DPRINTK_FLAGS_PRINT) &&	\
> +	    __ratelimit(&_rs))						\
> +		__dynamic_pr_debug(&descriptor, pr_fmt(fmt),		\
> +				   ##__VA_ARGS__);			\
>  } while (0)
> -#elif defined(DEBUG)
> -#define dev_dbg(dev, format, arg...)		\
> -	dev_printk(KERN_DEBUG, dev, format, ##arg)
>  #else
> -#define dev_dbg(dev, format, arg...)				\
> -({								\
> -	if (0)							\
> -		dev_printk(KERN_DEBUG, dev, format, ##arg);	\
> -	0;							\
> -})
> +#define dev_dbg_ratelimited(dev, fmt, ...)			\
> +	no_printk(KERN_DEBUG pr_fmt(fmt), ##__VA_ARGS__)
>  #endif
>  
>  #ifdef VERBOSE_DEBUG
> 

http://patchwork.linuxtv.org/patch/14158/
Koji have the old one.
Please do patch whit this one from Hiroshi, so we can use it with
latest&greatest media_build without 'usb_urb_complete' flood.
In an attach is Beefy Miracle aligned diff.

Muchas gracias,
poma


[-- Attachment #2: shut-up-dev_dbg-3.5.4-2.fc17.x86_64.diff --]
[-- Type: text/x-patch, Size: 1054 bytes --]

--- v3-1-1-driver-core-Shut-up-dev_dbg_reatelimited-without-DEBUG.patch	2012-10-01 12:21:59.743710145 +0200
+++ device.h-3.5.4-2.fc17.x86_64.patch	2012-10-01 14:29:52.875520419 +0200
@@ -1,8 +1,6 @@
-diff --git a/include/linux/device.h b/include/linux/device.h
-index 9648331..bb6ffcb 100644
---- a/include/linux/device.h
-+++ b/include/linux/device.h
-@@ -932,6 +932,32 @@ int _dev_info(const struct device *dev, const char *fmt, ...)
+--- /usr/src/kernels/3.5.4-2.fc17.x86_64/include/linux/device.h.orig	2012-10-01 14:28:24.609693878 +0200
++++ /usr/src/kernels/3.5.4-2.fc17.x86_64/include/linux/device.h	2012-10-01 14:29:50.725647318 +0200
+@@ -939,6 +939,32 @@
  
  #endif
  
@@ -35,7 +33,7 @@
  #define dev_level_ratelimited(dev_level, dev, fmt, ...)			\
  do {									\
  	static DEFINE_RATELIMIT_STATE(_rs,				\
-@@ -955,33 +981,21 @@ do {									\
+@@ -962,33 +988,21 @@
  	dev_level_ratelimited(dev_notice, dev, fmt, ##__VA_ARGS__)
  #define dev_info_ratelimited(dev, fmt, ...)				\
  	dev_level_ratelimited(dev_info, dev, fmt, ##__VA_ARGS__)

  reply	other threads:[~2012-10-01 13:09 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-09-04  4:40 [v3 1/1] driver-core: Shut up dev_dbg_reatelimited() without DEBUG Hiroshi Doyu
2012-10-01 13:09 ` poma [this message]
  -- strict thread matches above, loose matches on Subject: below --
2012-08-24  4:35 Hiroshi Doyu
2012-08-25  7:12 ` Hin-Tak Leung

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=5069960C.8020507@gmail.com \
    --to=pomidorabelisima@gmail.com \
    --cc=devel@lists.fedoraproject.org \
    --cc=hdoyu@nvidia.com \
    --cc=jwboyer@fedora \
    --cc=kernel@lists.fedoraproject.org \
    --cc=linux-media@vger.kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).