From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1757158AbcG1SyT (ORCPT ); Thu, 28 Jul 2016 14:54:19 -0400 Received: from mail-pa0-f68.google.com ([209.85.220.68]:35558 "EHLO mail-pa0-f68.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1757046AbcG1SyR (ORCPT ); Thu, 28 Jul 2016 14:54:17 -0400 Date: Thu, 28 Jul 2016 11:54:09 -0700 From: Dmitry Torokhov To: Joe Perches Cc: Benjamin Tissoires , linux-input@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] Input - elantech: fix debug dump of the current packet Message-ID: <20160728185409.GG16852@dtor-ws> References: <1469699935-23056-1-git-send-email-benjamin.tissoires@redhat.com> <1469730656.3998.63.camel@perches.com> <20160728184003.GE16852@dtor-ws> <1469731797.3998.69.camel@perches.com> MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit In-Reply-To: <1469731797.3998.69.camel@perches.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jul 28, 2016 at 11:49:57AM -0700, Joe Perches wrote: > On Thu, 2016-07-28 at 11:40 -0700, Dmitry Torokhov wrote: > > On Thu, Jul 28, 2016 at 11:30:56AM -0700, Joe Perches wrote: > > > > > > On Thu, 2016-07-28 at 11:58 +0200, Benjamin Tissoires wrote: > > > > > > > > The use of mixed psmouse_printk() and printk creates 2 lines in the log, > > > > while the use of %*ph solves everything. > > > > > > > > Signed-off-by: Benjamin Tissoires > > > > --- > > > >  drivers/input/mouse/elantech.c | 8 ++------ > > > >  1 file changed, 2 insertions(+), 6 deletions(-) > > > > > > > > diff --git a/drivers/input/mouse/elantech.c b/drivers/input/mouse/elantech.c > > > > index 615d23e..3461d04 100644 > > > > --- a/drivers/input/mouse/elantech.c > > > > +++ b/drivers/input/mouse/elantech.c > > > > @@ -222,12 +222,8 @@ static int elantech_write_reg(struct psmouse *psmouse, unsigned char reg, > > > >   */ > > > >  static void elantech_packet_dump(struct psmouse *psmouse) > > > >  { > > > > - int i; > > > > - > > > > - psmouse_printk(KERN_DEBUG, psmouse, "PS/2 packet ["); > > > > - for (i = 0; i < psmouse->pktsize; i++) > > > > - printk("%s0x%02x ", i ? ", " : " ", psmouse->packet[i]); > > > > - printk("]\n"); > > > > + psmouse_printk(KERN_DEBUG, psmouse, "PS/2 packet [%*ph]", > > > > +        psmouse->pktsize, psmouse->packet); > > > >  } > > > >   > > > >  /* > > > This should add a newline "\n" format termination but > > I added it, thanks for alerting me. > > > > > > > > how does the original produce multiple lines of output? > > > > > > It looks more like psmouse_printk should be removed altogether > > > and dev_debug should be used instead. > > That does not produce output by default whereas elantech driver uses > > elantech_packet_dump() to drop unexpected packets. > > So use dev_printk(KERN_DEBUG, etc... #define psmouse_printk(level, psmouse, format, ...) \ dev_printk(level, \ &(psmouse)->ps2dev.serio->dev, \ psmouse_fmt(format), ##__VA_ARGS__) I want to see current protocol module in th eoutput and I do not want to write "&(psmouse)->ps2dev.serio->dev" all the time. > > > But I still don't see a mechanism for the original code to be > emitted on multiple lines. Message from another driver snuck in? > > How long is the longest packet? > > This might truncate it. No, buffer is 8 bytes. > > Should this be ratelimited? So far there wasn't a need. -- Dmitry