From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-14.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, MENTIONS_GIT_HOSTING,SIGNED_OFF_BY,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 477D4C2D0E4 for ; Mon, 16 Nov 2020 01:48:26 +0000 (UTC) Received: from vger.kernel.org (unknown [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 8D74C22265 for ; Mon, 16 Nov 2020 01:48:25 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8D74C22265 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=perches.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728397AbgKPBsE (ORCPT ); Sun, 15 Nov 2020 20:48:04 -0500 Received: from smtprelay0103.hostedemail.com ([216.40.44.103]:50448 "EHLO smtprelay.hostedemail.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728010AbgKPBsE (ORCPT ); Sun, 15 Nov 2020 20:48:04 -0500 Received: from filter.hostedemail.com (clb03-v110.bra.tucows.net [216.40.38.60]) by smtprelay06.hostedemail.com (Postfix) with ESMTP id 3AFBB18225E1A; Mon, 16 Nov 2020 01:48:03 +0000 (UTC) X-Session-Marker: 6A6F6540706572636865732E636F6D X-HE-Tag: wine72_45072f727325 X-Filterd-Recvd-Size: 3673 Received: from XPS-9350.home (unknown [47.151.133.149]) (Authenticated sender: joe@perches.com) by omf07.hostedemail.com (Postfix) with ESMTPA; Mon, 16 Nov 2020 01:48:02 +0000 (UTC) Message-ID: <720b8857ebbe1be81babd04463b865d94049c0a9.camel@perches.com> Subject: Re: [tip: timers/core] timer_list: Use printk format instead of open-coded symbol lookup From: Joe Perches To: linux-kernel@vger.kernel.org, linux-tip-commits@vger.kernel.org Cc: Helge Deller , Thomas Gleixner , x86@kernel.org Date: Sun, 15 Nov 2020 17:48:01 -0800 In-Reply-To: <160548066806.11244.12654291126762323623.tip-bot2@tip-bot2> References: <20201104163401.GA3984@ls3530.fritz.box> <160548066806.11244.12654291126762323623.tip-bot2@tip-bot2> Content-Type: text/plain; charset="ISO-8859-1" User-Agent: Evolution 3.38.1-1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 2020-11-15 at 22:51 +0000, tip-bot2 for Helge Deller wrote: > The following commit has been merged into the timers/core branch of tip: > > Commit-ID: da88f9b3113620dcd30fc203236aa53d5430ee98 > Gitweb: https://git.kernel.org/tip/da88f9b3113620dcd30fc203236aa53d5430ee98 > Author: Helge Deller > AuthorDate: Wed, 04 Nov 2020 17:34:01 +01:00 > Committer: Thomas Gleixner > CommitterDate: Sun, 15 Nov 2020 20:47:14 +01:00 > > timer_list: Use printk format instead of open-coded symbol lookup > > Use the "%ps" printk format string to resolve symbol names. > > This works on all platforms, including ia64, ppc64 and parisc64 on which > one needs to dereference pointers to function descriptors instead of > function pointers. > > Signed-off-by: Helge Deller > Signed-off-by: Thomas Gleixner > Link: https://lore.kernel.org/r/20201104163401.GA3984@ls3530.fritz.box > > > --- >  kernel/time/timer_list.c | 66 +++++++++++---------------------------- >  1 file changed, 19 insertions(+), 47 deletions(-) > > diff --git a/kernel/time/timer_list.c b/kernel/time/timer_list.c > index acb326f..6939140 100644 > --- a/kernel/time/timer_list.c > +++ b/kernel/time/timer_list.c > @@ -42,24 +42,11 @@ static void SEQ_printf(struct seq_file *m, const char *fmt, ...) >   va_end(args); >  } >   > > -static void print_name_offset(struct seq_file *m, void *sym) > -{ > - char symname[KSYM_NAME_LEN]; > - > - if (lookup_symbol_name((unsigned long)sym, symname) < 0) > - SEQ_printf(m, "<%pK>", sym); > - else > - SEQ_printf(m, "%s", symname); > -} > - >  static void >  print_timer(struct seq_file *m, struct hrtimer *taddr, struct hrtimer *timer, >   int idx, u64 now) >  { > - SEQ_printf(m, " #%d: ", idx); > - print_name_offset(m, taddr); > - SEQ_printf(m, ", "); > - print_name_offset(m, timer->function); > + SEQ_printf(m, " #%d: <%pK>, %ps", idx, taddr, timer->function); >   SEQ_printf(m, ", S:%02x", timer->state); >   SEQ_printf(m, "\n"); trivia: This could be coalesced into a single line statement. SEQ_printf(m, "%d: <%pK>, %ps, S:%02x\n", idx, taddr, timer->function, timer->state); [] > - if (dev->set_state_periodic) { > - SEQ_printf(m, " periodic: "); > - print_name_offset(m, dev->set_state_periodic); > - SEQ_printf(m, "\n"); > - } > + if (dev->set_state_periodic) > + SEQ_printf(m, " periodic: %ps\n", > + dev->set_state_periodic); There is now additional whitespace after periodic: and oneshot: This _might_ break some silly script that uses fixed column alignment for the SEQ_ output. It does look nicer now though.