PCI: pciehp: Replace pciehp_debug module param with dyndbg
authorFrederick Lawler <fred@fredlawl.com>
Tue, 7 May 2019 23:24:52 +0000 (18:24 -0500)
committerBjorn Helgaas <bhelgaas@google.com>
Thu, 9 May 2019 21:45:20 +0000 (16:45 -0500)
Previously pciehp debug messages were enabled by the pciehp_debug module
parameter, e.g., by booting with this kernel command line option:

  pciehp.pciehp_debug=1

Convert this mechanism to use the generic dynamic debug (dyndbg) feature.
After this commit, pciehp debug messages are enabled by building the kernel
with CONFIG_DYNAMIC_DEBUG=y and booting with this command line option:

  dyndbg="file pciehp* +p"

The dyndbg facility is much more flexible: messages can be enabled at boot-
or run-time based on the file name, function name, line number, message
test, etc.  See Documentation/admin-guide/dynamic-debug-howto.rst for more
details.

Link: https://lore.kernel.org/lkml/20190509141456.223614-7-helgaas@kernel.org
Signed-off-by: Frederick Lawler <fred@fredlawl.com>
[bhelgaas: commit log, comment, remove pciehp_debug parameter]
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Keith Busch <keith.busch@intel.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
drivers/pci/hotplug/pciehp.h
drivers/pci/hotplug/pciehp_core.c

index 506e1d923a1ffc74d27ce4e608bf6cc5744e89bc..af5d9f92e6d5abb2961981e37cc9d0c22d1ed048 100644 (file)
 
 extern bool pciehp_poll_mode;
 extern int pciehp_poll_time;
-extern bool pciehp_debug;
 
+/*
+ * Set CONFIG_DYNAMIC_DEBUG=y and boot with 'dyndbg="file pciehp* +p"' to
+ * enable debug messages.
+ */
 #define dbg(format, arg...)                                            \
-do {                                                                   \
-       if (pciehp_debug)                                               \
-               printk(KERN_DEBUG "%s: " format, MY_NAME, ## arg);      \
-} while (0)
+       pr_debug("%s: " format, MY_NAME, ## arg);
 #define err(format, arg...)                                            \
        printk(KERN_ERR "%s: " format, MY_NAME, ## arg)
 #define info(format, arg...)                                           \
@@ -44,11 +44,7 @@ do {                                                                 \
        printk(KERN_WARNING "%s: " format, MY_NAME, ## arg)
 
 #define ctrl_dbg(ctrl, format, arg...)                                 \
-       do {                                                            \
-               if (pciehp_debug)                                       \
-                       dev_printk(KERN_DEBUG, &ctrl->pcie->device,     \
-                                       format, ## arg);                \
-       } while (0)
+       dev_dbg(&ctrl->pcie->device, format, ## arg)
 #define ctrl_err(ctrl, format, arg...)                                 \
        dev_err(&ctrl->pcie->device, format, ## arg)
 #define ctrl_info(ctrl, format, arg...)                                        \
index fc5366b50e9565cc4ad0d9d193ab42d926d1dfef..6ff204c435bf200b737ad9e4595d56466960edd9 100644 (file)
@@ -27,7 +27,6 @@
 #include "../pci.h"
 
 /* Global variables */
-bool pciehp_debug;
 bool pciehp_poll_mode;
 int pciehp_poll_time;
 
@@ -35,10 +34,8 @@ int pciehp_poll_time;
  * not really modular, but the easiest way to keep compat with existing
  * bootargs behaviour is to continue using module_param here.
  */
-module_param(pciehp_debug, bool, 0644);
 module_param(pciehp_poll_mode, bool, 0644);
 module_param(pciehp_poll_time, int, 0644);
-MODULE_PARM_DESC(pciehp_debug, "Debugging mode enabled or not");
 MODULE_PARM_DESC(pciehp_poll_mode, "Using polling mechanism for hot-plug events or not");
 MODULE_PARM_DESC(pciehp_poll_time, "Polling mechanism frequency, in seconds");