mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Rasmus Villemoes <linux@rasmusvillemoes.dk>
To: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-kernel@vger.kernel.org,
	Alessandro Zummo <a.zummo@towertech.it>,
	Alexandre Belloni <alexandre.belloni@free-electrons.com>,
	linux-rtc@vger.kernel.org
Subject: Re: [PATCH v1 01/25] lib/vsprintf: Remove useless NULL checks
Date: Thu, 08 Jun 2017 22:59:26 +0200	[thread overview]
Message-ID: <87shjakxg1.fsf@rasmusvillemoes.dk> (raw)
In-Reply-To: <20170608134811.60786-2-andriy.shevchenko@linux.intel.com> (Andy Shevchenko's message of "Thu, 8 Jun 2017 16:47:47 +0300")

On Thu, Jun 08 2017, Andy Shevchenko <andriy.shevchenko@linux.intel.com> wrote:

> The pointer can't be NULL since it's first what has been done in the
> pointer().
>
> Remove useless checks.
>
> Note when we print clock name or rate it is safe in case !CONFIG_HAVE_CLK.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> ---
>  lib/vsprintf.c | 11 -----------
>  1 file changed, 11 deletions(-)
>
> diff --git a/lib/vsprintf.c b/lib/vsprintf.c
> index 9f16406288c0..031c2cc5c1c0 100644
> --- a/lib/vsprintf.c
> +++ b/lib/vsprintf.c
> @@ -811,10 +811,6 @@ char *hex_string(char *buf, char *end, u8 *addr, struct printf_spec spec,
>  		/* nothing to print */
>  		return buf;
>  
> -	if (ZERO_OR_NULL_PTR(addr))
> -		/* NULL pointer */
> -		return string(buf, end, NULL, spec);
> -
>  	switch (fmt[1]) {
>  	case 'C':
>  		separator = ':';
> @@ -1253,10 +1249,6 @@ char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec,
>  	if (spec.field_width == 0)
>  		return buf;				/* nothing to print */
>  
> -	if (ZERO_OR_NULL_PTR(addr))
> -		return string(buf, end, NULL, spec);	/* NULL pointer */
> -
> -

Well, ZERO_OR_NULL_PTR checks for a little more than !addr, but I
suppose that if anyone passes the result from kmalloc(0) to %ph, they'd
better also pass 0 as the size, so the .field_width tests should be
sufficient.

>  	do {
>  		switch (fmt[count++]) {
>  		case 'a':
> @@ -1391,9 +1383,6 @@ static noinline_for_stack
>  char *clock(char *buf, char *end, struct clk *clk, struct printf_spec spec,
>  	    const char *fmt)
>  {
> -	if (!IS_ENABLED(CONFIG_HAVE_CLK) || !clk)
> -		return string(buf, end, NULL, spec);
> -

Well, it may be safe, but removing the IS_ENABLED(CONFIG_HAVE_CLK) check
means that clock() becomes a much bigger function when
!IS_ENABLED(CONFIG_HAVE_CLK). You're right that the !clk check is
pointless.

  reply	other threads:[~2017-06-08 20:59 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-08 13:47 [PATCH v1 00/25] lib, rtc: Print rtc_time via %pt[dt][rv] Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 01/25] lib/vsprintf: Remove useless NULL checks Andy Shevchenko
2017-06-08 20:59   ` Rasmus Villemoes [this message]
2017-07-20 10:22     ` Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 02/25] lib/vsprintf: Make decspec global Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 03/25] lib/vsprintf: Make strspec global Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 04/25] lib/vsprintf: Print time and date in human readable format via %pt Andy Shevchenko
2017-06-08 14:49   ` Arnd Bergmann
2017-06-08 14:55     ` Andy Shevchenko
2017-06-08 15:05       ` Alexandre Belloni
2017-06-08 17:57         ` Andy Shevchenko
2017-06-08 18:41           ` Alexandre Belloni
2017-06-08 18:49             ` Andy Shevchenko
2017-06-08 20:42               ` Rasmus Villemoes
2017-06-08 21:25                 ` Andy Shevchenko
2017-06-08 21:45                   ` Arnd Bergmann
2017-07-20 10:30                     ` Andy Shevchenko
2017-06-08 15:33       ` Arnd Bergmann
2017-06-08 15:48         ` Joe Perches
2017-06-08 18:02         ` Andy Shevchenko
2017-06-08 23:09           ` Joe Perches
2017-06-08 13:47 ` [PATCH v1 05/25] ds1302: Switch to use %pt Andy Shevchenko
2017-06-08 14:00   ` Greg Kroah-Hartman
2017-06-08 13:47 ` [PATCH v1 06/25] rtc: " Andy Shevchenko
2017-06-08 14:00   ` Greg Kroah-Hartman
2017-06-08 18:38     ` Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 07/25] rtc: at91rm9200: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 08/25] rtc: at91sam9: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 09/25] rtc: m41t80: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 10/25] rtc: m48t59: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 11/25] rtc: mcp795: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 12/25] rtc: pcf50633: " Andy Shevchenko
2017-06-08 13:47 ` [PATCH v1 13/25] rtc: pic32: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 14/25] rtc: pm8xxx: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 15/25] rtc: puv3: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 16/25] rtc: rk808: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 17/25] rtc: rx6110: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 18/25] rtc: rx8025: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 19/25] rtc: s3c: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 20/25] rtc: s5m: " Andy Shevchenko
2017-06-08 16:46   ` Krzysztof Kozlowski
2017-06-08 13:48 ` [PATCH v1 21/25] rtc: tegra: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 22/25] mk68/mac: " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 23/25] Input: hp_sdc_rtc - " Andy Shevchenko
2017-06-08 13:48 ` [PATCH v1 24/25] kdb: " Andy Shevchenko
2017-06-09 13:42   ` Daniel Thompson
2017-10-12 13:31   ` Arnd Bergmann
2017-10-12 17:05     ` Andy Shevchenko
2017-10-13  7:42       ` Arnd Bergmann
2017-06-08 13:48 ` [PATCH v1 25/25] PM: " Andy Shevchenko
2017-06-08 17:16   ` Rafael J. Wysocki
2017-06-08 14:52 ` [PATCH v1 00/25] lib, rtc: Print rtc_time via %pt[dt][rv] Joe Perches
2017-06-08 15:02   ` Andy Shevchenko
2017-06-09  5:08     ` Joe Perches
2017-07-18 17:50 ` Joe Perches
2017-07-18 17:55   ` Andy Shevchenko
2017-07-18 18:32     ` Joe Perches
2017-07-18 19:57   ` Mark Salyzyn
2017-07-20 10:33     ` Andy Shevchenko
2017-07-20 17:57       ` Mark Salyzyn
2017-07-21  4:07         ` Joe Perches

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87shjakxg1.fsf@rasmusvillemoes.dk \
    --to=linux@rasmusvillemoes.dk \
    --cc=a.zummo@towertech.it \
    --cc=akpm@linux-foundation.org \
    --cc=alexandre.belloni@free-electrons.com \
    --cc=andriy.shevchenko@linux.intel.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rtc@vger.kernel.org \
    --cc=rasmus.villemoes@prevas.dk \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®