@@ -11,6 +11,8 @@
* Copyright (C) 2006 Craig W. Nadler
*/
+/* #define VERBOSE_DEBUG */
+
#include <linux/module.h>
#include <linux/kernel.h>
#include <linux/delay.h>
@@ -364,7 +366,8 @@ printer_open(struct inode *inode, struct file *fd)
spin_unlock_irqrestore(&dev->lock, flags);
kref_get(&dev->kref);
- DBG(dev, "printer_open returned %x\n", ret);
+ VDBG(dev, "%s returned %x\n", __func__, ret);
+
return ret;
}
@@ -381,7 +384,6 @@ printer_close(struct inode *inode, struct file *fd)
dev->printer_status &= ~PRINTER_SELECTED;
spin_unlock_irqrestore(&dev->lock, flags);
- DBG(dev, "printer_close\n");
kref_put(&dev->kref, printer_dev_free);
return 0;
Don't issue any messages if printer_open() is successful. Also don't issue them if unsuccessful - the error code is propagated to the calling layers and should be acted on appropriately there. Just as it is with the -ENODEV case. For those who really want this message leave an option to compile-in with composite framework's VDBG() by uncommenting #define VERBOSE_DEBUG. While at it, visually detach the "return ret;" statement. Use __func__ instead of explicitly hardcoding the function name. This, in turn makes checkpatch issue this for the message in printer_close(): WARNING: Unnecessary ftrace-like logging - prefer using ftrace 54: FILE: drivers/usb/gadget/function/f_printer.c:387: + VDBG(dev, "%s\n", __func__); which lets us eliminate the debug message from printer_close() altogether. Signed-off-by: Andrzej Pietrasiewicz <andrzej.p@collabora.com> --- Attention This patch depends on a recent patch from Dan Carpenter: usb: gadget: function: use after free in printer_close() drivers/usb/gadget/function/f_printer.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)