Em Thu, 06 Mar 2014 12:00:30 +0100 Laurent Pinchart <laurent.pinchart@xxxxxxxxxxxxxxxx> escreveu: > Hi Greg, > > On Wednesday 05 March 2014 20:45:29 Greg Kroah-Hartman wrote: > > On Thu, Mar 06, 2014 at 01:48:29AM +0100, Laurent Pinchart wrote: > > > On Wednesday 05 March 2014 16:28:03 Joe Perches wrote: > > > > On Thu, 2014-03-06 at 00:50 +0100, Laurent Pinchart wrote: > > > > > Please note that -DDEBUG is equivalent to '#define DEBUG', not to > > > > > '#define CONFIG_DEBUG'. 'DEBUG' needs to be defined for dev_dbg() to > > > > > have any effect. > > > > > > > > Not quite. If CONFIG_DYNAMIC_DEBUG is set, these > > > > dev_dbg statements are compiled in but not by default > > > > set to emit output. Output can be enabled by using > > > > dynamic_debug controls like: > > > > > > > > # echo -n 'file omap4iss/* +p' > <debugfs>/dynamic_debug/control > > > > > > > > See Documentation/dynamic-debug-howto.txt for more details. > > > > > > Thank you for the additional information. > > > > > > Would you recommend to drop driver-specific Kconfig options related to > > > debugging and use CONFIG_DYNAMIC_DEBUG instead ? > > > > Yes, please do that, no one wants to rebuild drivers and subsystems with > > different options just for debugging. I agree that this is the best solution. > > Is CONFIG_DYNAMIC_DEBUG lean enough to be used on embedded systems ? Note that > people would still have to rebuild their kernel to enable CONFIG_DYNAMIC_DEBUG > anyway :-) Some distros, like Fedora, ships two different kernels: one compiled with most of those DEBUG macros disabled, and another one with them enabled: kernel.x86_64 : The Linux kernel kernel-debug.x86_64 : The Linux kernel compiled with extra debugging enabled That helps to have a "production" kernel using less memory, yet allowing one to boot with the debug Kernel, if he needs to debug some driver(s). PS.: In Fedora, in the specific case of CONFIG_DYNAMIC_DEBUG, it has it enabled since, at least, 2010 (when they changed the SCM to git) at the "production" kernel even for ARM. So, I suspect that the extra amount of memory required for it is not much, but I never actually bothered to check. On my view, except on embedded systems with very very limited memory constraints, it makes sense to keep CONFIG_DYNAMIC_DEBUG always enabled. Btw, I would expect a reasonable amount of RAM on any embedded system that supports v4l, because video buffers require a lot of memory. Comparing to the size of those buffers, I suspect that the extra amount of memory for the debug strings and code is negligible. -- Cheers, Mauro _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel