Re: [PATCH 04/25] dynamic_debug: make dynamic-debug supersede DEBUG ccflag

From: Jim Cromie
Date: Wed Nov 30 2011 - 19:27:12 EST


On Wed, Nov 30, 2011 at 3:16 PM, Joe Perches <joe@xxxxxxxxxxx> wrote:
> On Wed, 2011-11-30 at 17:03 -0500, Jason Baron wrote:
>> I think it's this patach that is causing a lot of "=p" when I boot up
>> using a 'make defconfig'.
>
> =p?
>

Thats referring to the new enabled indicator in control,
its more greppable than plain old 'p', and has better memonics
(p-flag is set)

root@voyage:~# grep =p /dbg/dynamic_debug/control
fs/sysfs/mount.c:66 [mount]sysfs_fill_super =p "%s: could not get root
dentry!\012"
fs/sysfs/mount.c:59 [mount]sysfs_fill_super =p "sysfs: could not get
root inode\012"
drivers/rtc/class.c:102 [rtc_core]rtc_resume =p "%s: time travel!\012"
drivers/rtc/class.c:94 [rtc_core]rtc_resume =p "%s: bogus resume time\012"

>>  I'm a bit surprised at how many files have
>> 'DEBUG' defined.
>

thats at least partly due to defconfig
I turn on a few things via bootline and /etc/modprobe.d/dyndbg.conf

handy for seeing boot-time dyndbg processing,
you;ll want to turn it off before catting control..
dynamic_debug.verbose=1

root@voyage:~# more /etc/modprobe.d/dyndbg.conf
options scx200_acb dyndbg=+mfp
options pc87360 dyndbg=+p

root@voyage:~# grep =p /dbg/dynamic_debug/control |wc
42 302 3950


dynamic_debug:ddebug_change: changed drivers/hwmon/pc87360.c:1506
[pc87360]pc87360_update_device =p
dynamic_debug:ddebug_exec_query: applied: func="" file=""
module="pc87360" format="" lineno=0-0
dynamic_debug:ddebug_exec_queries: processed 1 queries, with 20 matches, 0 errs
dynamic_debug:ddebug_module_parse_args: Finished pc87360 parsing

root@voyage:~# grep =p /dbg/dynamic_debug/control |grep pc87 |wc
20 137 1867

> Also look for DDEBUG in Makefiles.
>
>> Are we sure that we are setting the 'p' flag for the
>> same set of debug statements that would be set if CONFIG_DYNAMIC_DEBUG
>> were not set?
>
> ?

FWIW, I have a few that Im not setting explicitly,
which are probably set by *_DEBUG, as Joe suggested

root@voyage:~# zgrep -i rtc /proc/config.gz | grep DEBUG
CONFIG_RTC_DEBUG=y

root@voyage:~# grep =p /dbg/dynamic_debug/control |grep rtc |wc
12 84 989


>
>> Also, it seems a bit strange to me, if I now enable all debug statements
>> and then clear everything (common pattern, I think), that I'm now
>> disabling stuff that was enabled by default.
>
> I don't think that's a common pattern and I
> also don't think that's bad.
>

moreover, we'd need another bit (at least) to distinguish default
flags from current flags.

the query-cmd language lets you constrain, but without any,
all sites *should* be affected

root@voyage:~# echo +p > /dbg/dynamic_debug/control
dynamic_debug:ddebug_exec_queries: processed 1 queries, with 613 matches, 0 errs
uart_wait_until_sent(0), jiffies=703813, expire=703855...
root@voyage:~# grep =p /dbg/dynamic_debug/control |wc
uart_wait_until_sent(0), jiffies=724988, expire=725030...
613 4683 56064
uart_wait_until_sent(0), jiffies=725263, expire=725305...
root@voyage:~# echo -p > /dbg/dynamic_debug/control
uart_wait_until_sent(0), jiffies=742213, expire=742255...
dynamic_debug:ddebug_exec_queries: processed 1 queries, with 613 matches, 0 errs
root@voyage:~# grep =p /dbg/dynamic_debug/control |wc
0 0 0
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/