Re: [PATCH 3/7] dma: iop-adma: use correct printk format strings

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 09-08-19, 18:33, Arnd Bergmann wrote:
> When compile-testing on other architectures, we get lots of warnings
> about incorrect format strings, like:
> 
>    drivers/dma/iop-adma.c: In function 'iop_adma_alloc_slots':
>    drivers/dma/iop-adma.c:307:6: warning: format '%x' expects argument of type 'unsigned int', but argument 6 has type 'dma_addr_t {aka long long unsigned int}' [-Wformat=]
> 
>    drivers/dma/iop-adma.c: In function 'iop_adma_prep_dma_memcpy':
> >> drivers/dma/iop-adma.c:518:40: warning: format '%u' expects argument of type 'unsigned int', but argument 5 has type 'size_t {aka long unsigned int}' [-Wformat=]
> 
> Use %zu for printing size_t as required, and cast the dma_addr_t
> arguments to 'u64' for printing with %llx. Ideally this should use
> the %pad format string, but that requires an lvalue argument that
> doesn't work here.

Please change title to "dmaengine: iop-adma: use correct printk format strings"

After that:

Acked-by: Vinod Koul <vkoul@xxxxxxxxxx>

> 
> Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> ---
>  drivers/dma/iop-adma.c | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/dma/iop-adma.c b/drivers/dma/iop-adma.c
> index 7857b54770d1..aebdd671651a 100644
> --- a/drivers/dma/iop-adma.c
> +++ b/drivers/dma/iop-adma.c
> @@ -117,9 +117,9 @@ static void __iop_adma_slot_cleanup(struct iop_adma_chan *iop_chan)
>  	list_for_each_entry_safe(iter, _iter, &iop_chan->chain,
>  					chain_node) {
>  		pr_debug("\tcookie: %d slot: %d busy: %d "
> -			"this_desc: %#x next_desc: %#x ack: %d\n",
> +			"this_desc: %#x next_desc: %#llx ack: %d\n",
>  			iter->async_tx.cookie, iter->idx, busy,
> -			iter->async_tx.phys, iop_desc_get_next_desc(iter),
> +			iter->async_tx.phys, (u64)iop_desc_get_next_desc(iter),
>  			async_tx_test_ack(&iter->async_tx));
>  		prefetch(_iter);
>  		prefetch(&_iter->async_tx);
> @@ -307,9 +307,9 @@ iop_adma_alloc_slots(struct iop_adma_chan *iop_chan, int num_slots,
>  				int i;
>  				dev_dbg(iop_chan->device->common.dev,
>  					"allocated slot: %d "
> -					"(desc %p phys: %#x) slots_per_op %d\n",
> +					"(desc %p phys: %#llx) slots_per_op %d\n",
>  					iter->idx, iter->hw_desc,
> -					iter->async_tx.phys, slots_per_op);
> +					(u64)iter->async_tx.phys, slots_per_op);
>  
>  				/* pre-ack all but the last descriptor */
>  				if (num_slots != slots_per_op)
> @@ -517,7 +517,7 @@ iop_adma_prep_dma_memcpy(struct dma_chan *chan, dma_addr_t dma_dest,
>  		return NULL;
>  	BUG_ON(len > IOP_ADMA_MAX_BYTE_COUNT);
>  
> -	dev_dbg(iop_chan->device->common.dev, "%s len: %u\n",
> +	dev_dbg(iop_chan->device->common.dev, "%s len: %zu\n",
>  		__func__, len);
>  
>  	spin_lock_bh(&iop_chan->lock);
> @@ -550,7 +550,7 @@ iop_adma_prep_dma_xor(struct dma_chan *chan, dma_addr_t dma_dest,
>  	BUG_ON(len > IOP_ADMA_XOR_MAX_BYTE_COUNT);
>  
>  	dev_dbg(iop_chan->device->common.dev,
> -		"%s src_cnt: %d len: %u flags: %lx\n",
> +		"%s src_cnt: %d len: %zu flags: %lx\n",
>  		__func__, src_cnt, len, flags);
>  
>  	spin_lock_bh(&iop_chan->lock);
> @@ -583,7 +583,7 @@ iop_adma_prep_dma_xor_val(struct dma_chan *chan, dma_addr_t *dma_src,
>  	if (unlikely(!len))
>  		return NULL;
>  
> -	dev_dbg(iop_chan->device->common.dev, "%s src_cnt: %d len: %u\n",
> +	dev_dbg(iop_chan->device->common.dev, "%s src_cnt: %d len: %zu\n",
>  		__func__, src_cnt, len);
>  
>  	spin_lock_bh(&iop_chan->lock);
> @@ -621,7 +621,7 @@ iop_adma_prep_dma_pq(struct dma_chan *chan, dma_addr_t *dst, dma_addr_t *src,
>  	BUG_ON(len > IOP_ADMA_XOR_MAX_BYTE_COUNT);
>  
>  	dev_dbg(iop_chan->device->common.dev,
> -		"%s src_cnt: %d len: %u flags: %lx\n",
> +		"%s src_cnt: %d len: %zu flags: %lx\n",
>  		__func__, src_cnt, len, flags);
>  
>  	if (dmaf_p_disabled_continue(flags))
> @@ -684,7 +684,7 @@ iop_adma_prep_dma_pq_val(struct dma_chan *chan, dma_addr_t *pq, dma_addr_t *src,
>  		return NULL;
>  	BUG_ON(len > IOP_ADMA_XOR_MAX_BYTE_COUNT);
>  
> -	dev_dbg(iop_chan->device->common.dev, "%s src_cnt: %d len: %u\n",
> +	dev_dbg(iop_chan->device->common.dev, "%s src_cnt: %d len: %zu\n",
>  		__func__, src_cnt, len);
>  
>  	spin_lock_bh(&iop_chan->lock);
> -- 
> 2.20.0

-- 
~Vinod



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux