All of lore.kernel.org
 help / color / mirror / Atom feed
From: Joe Perches <joe@perches.com>
To: Randy Dunlap <rdunlap@infradead.org>,
	Stepan Moskovchenko <stepanm@codeaurora.org>
Cc: Mark Brown <broonie@kernel.org>,
	LKML <linux-kernel@vger.kernel.org>,
	linux-spi@vger.kernel.org, Wenyou Yang <wenyou.yang@atmel.com>,
	Nicolas Ferre <nicolas.ferre@atmel.com>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: rfc: vsprintf and phys_addr_t and dma_addr_t via %pa (was Re: [PATCH] spi: fix spi-atmel.c printk format warnings)
Date: Fri, 21 Mar 2014 09:37:19 -0700	[thread overview]
Message-ID: <1395419839.7776.108.camel@joe-AO722> (raw)
In-Reply-To: <532C6085.9070203@infradead.org>

(Adding Stepan Moskovchenko who added %pa to vsprintf)

On Fri, 2014-03-21 at 08:53 -0700, Randy Dunlap wrote:
> Fix printk format warning by using %p extension 'ad' for dma_addr_t.

Hey Randy, Stepan and everyone else as well.

One of the things I'd like to get straightened out
before too many of these dma_addr_t conversions are
done is whether or not it should be prefixed by 0x.

%pad is not a direct replacement for %08x or %016x.
It changes the output.

Right now, all phys_addr_t and dma_addr_t types emitted
using %pa[pd] are "SPECIAL", meaning these are prefixed
with "0x".

No other pointer/address types have that "0x" prefix.

I'd prefer to remove the "SPECIAL" from the %pa extension
so that the output form of pointer/address types are
consistent.

This would change several output lines already using %pa.

I don't think that's bad, but maybe others do.

Thoughts?

---
 lib/vsprintf.c | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/lib/vsprintf.c b/lib/vsprintf.c
index 185b6d3..28fee91 100644
--- a/lib/vsprintf.c
+++ b/lib/vsprintf.c
@@ -1161,18 +1161,18 @@ char *address_val(char *buf, char *end, const void *addr,
 {
 	unsigned long long num;
 
-	spec.flags |= SPECIAL | SMALL | ZEROPAD;
+	spec.flags |= SMALL | ZEROPAD;
 	spec.base = 16;
 
 	switch (fmt[1]) {
 	case 'd':
 		num = *(const dma_addr_t *)addr;
-		spec.field_width = sizeof(dma_addr_t) * 2 + 2;
+		spec.field_width = sizeof(dma_addr_t) * 2;
 		break;
 	case 'p':
 	default:
 		num = *(const phys_addr_t *)addr;
-		spec.field_width = sizeof(phys_addr_t) * 2 + 2;
+		spec.field_width = sizeof(phys_addr_t) * 2;
 		break;
 	}
 


> drivers/spi/spi-atmel.c:1228:3: warning: format '%x' expects argument of type 'unsigned int', but argument 7 has type 'dma_addr_t' [-Wformat]
> drivers/spi/spi-atmel.c:1228:3: warning: format '%x' expects argument of type 'unsigned int', but argument 9 has type 'dma_addr_t' [-Wformat]
> 
> Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
> Cc: Wenyou Yang <wenyou.yang@atmel.com>
> Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
> ---
>  drivers/spi/spi-atmel.c |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> I thought that a patch for this was already posted but I can't find it...
> Applies to mainline.
> 
> --- linux-next-20140321.orig/drivers/spi/spi-atmel.c
> +++ linux-next-20140321/drivers/spi/spi-atmel.c
> @@ -1226,10 +1226,10 @@ static int atmel_spi_transfer_one_messag
>  
>  	list_for_each_entry(xfer, &msg->transfers, transfer_list) {
>  		dev_dbg(&spi->dev,
> -			"  xfer %p: len %u tx %p/%08x rx %p/%08x\n",
> +			"  xfer %p: len %u tx %p/%pad rx %p/%pad\n",
>  			xfer, xfer->len,
> -			xfer->tx_buf, xfer->tx_dma,
> -			xfer->rx_buf, xfer->rx_dma);
> +			xfer->tx_buf, &xfer->tx_dma,
> +			xfer->rx_buf, &xfer->rx_dma);
>  	}



  parent reply	other threads:[~2014-03-21 16:37 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-21 15:53 [PATCH] spi: fix spi-atmel.c printk format warnings Randy Dunlap
2014-03-21 16:02 ` Nicolas Ferre
2014-03-21 16:02   ` Nicolas Ferre
2014-03-21 16:37 ` Joe Perches [this message]
2014-03-21 16:42   ` rfc: vsprintf and phys_addr_t and dma_addr_t via %pa (was Re: [PATCH] spi: fix spi-atmel.c printk format warnings) Randy Dunlap
2014-03-21 16:42     ` Randy Dunlap
2014-03-21 17:45 ` [PATCH] spi: fix spi-atmel.c printk format warnings Mark Brown
2014-03-21 17:45   ` Mark Brown

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=1395419839.7776.108.camel@joe-AO722 \
    --to=joe@perches.com \
    --cc=akpm@linux-foundation.org \
    --cc=broonie@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-spi@vger.kernel.org \
    --cc=nicolas.ferre@atmel.com \
    --cc=rdunlap@infradead.org \
    --cc=stepanm@codeaurora.org \
    --cc=wenyou.yang@atmel.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.