DMA Engine development
 help / color / mirror / Atom feed
* [PATCH 1/3] dmaengine: shdma: increase size of 'dev_id'
@ 2024-01-19 12:49 Vinod Koul
  2024-01-19 12:49 ` [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name' Vinod Koul
  2024-01-19 12:49 ` [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code Vinod Koul
  0 siblings, 2 replies; 5+ messages in thread
From: Vinod Koul @ 2024-01-19 12:49 UTC (permalink / raw)
  To: dmaengine, Vinod Koul

We seem to have hit warnings of 'output may be truncated' which is fixed
by increasing the size of 'dev_id'

drivers/dma/sh/shdmac.c: In function ‘sh_dmae_probe’:
drivers/dma/sh/shdmac.c:541:34: error: ‘%d’ directive output may be truncated writing between 1 and 10 bytes into a region of size 9 [-Werror=format-truncation=]
  541 |                          "sh-dmae%d.%d", pdev->id, id);
      |                                  ^~
In function ‘sh_dmae_chan_probe’,
    inlined from ‘sh_dmae_probe’ at drivers/dma/sh/shdmac.c:845:9:
drivers/dma/sh/shdmac.c:541:26: note: directive argument in the range [0, 2147483647]
  541 |                          "sh-dmae%d.%d", pdev->id, id);
      |                          ^~~~~~~~~~~~~~
drivers/dma/sh/shdmac.c:541:26: note: directive argument in the range [0, 19]
drivers/dma/sh/shdmac.c:540:17: note: ‘snprintf’ output between 11 and 21 bytes into a destination of size 16
  540 |                 snprintf(sh_chan->dev_id, sizeof(sh_chan->dev_id),
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  541 |                          "sh-dmae%d.%d", pdev->id, id);
      |                          ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 drivers/dma/sh/shdma.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dma/sh/shdma.h b/drivers/dma/sh/shdma.h
index 9c121a4b33ad..f97d80343aea 100644
--- a/drivers/dma/sh/shdma.h
+++ b/drivers/dma/sh/shdma.h
@@ -25,7 +25,7 @@ struct sh_dmae_chan {
 	const struct sh_dmae_slave_config *config; /* Slave DMA configuration */
 	int xmit_shift;			/* log_2(bytes_per_xfer) */
 	void __iomem *base;
-	char dev_id[16];		/* unique name per DMAC of channel */
+	char dev_id[32];		/* unique name per DMAC of channel */
 	int pm_error;
 	dma_addr_t slave_addr;
 };
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name'
  2024-01-19 12:49 [PATCH 1/3] dmaengine: shdma: increase size of 'dev_id' Vinod Koul
@ 2024-01-19 12:49 ` Vinod Koul
  2024-01-19 17:18   ` Frank Li
  2024-01-19 12:49 ` [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code Vinod Koul
  1 sibling, 1 reply; 5+ messages in thread
From: Vinod Koul @ 2024-01-19 12:49 UTC (permalink / raw)
  To: dmaengine, Vinod Koul

We seem to have hit warnings of 'output may be truncated' which is fixed
by increasing the size of 'irq_name'

drivers/dma/fsl-qdma.c: In function ‘fsl_qdma_irq_init’:
drivers/dma/fsl-qdma.c:824:46: error: ‘%d’ directive writing between 1 and 11 bytes into a region of size 10 [-Werror=format-overflow=]
  824 |                 sprintf(irq_name, "qdma-queue%d", i);
      |                                              ^~
drivers/dma/fsl-qdma.c:824:35: note: directive argument in the range [-2147483641, 2147483646]
  824 |                 sprintf(irq_name, "qdma-queue%d", i);
      |                                   ^~~~~~~~~~~~~~
drivers/dma/fsl-qdma.c:824:17: note: ‘sprintf’ output between 12 and 22 bytes into a destination of size 20
  824 |                 sprintf(irq_name, "qdma-queue%d", i);
      |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 drivers/dma/fsl-qdma.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/dma/fsl-qdma.c b/drivers/dma/fsl-qdma.c
index 47cb28468049..a1d0aa63142a 100644
--- a/drivers/dma/fsl-qdma.c
+++ b/drivers/dma/fsl-qdma.c
@@ -805,7 +805,7 @@ fsl_qdma_irq_init(struct platform_device *pdev,
 	int i;
 	int cpu;
 	int ret;
-	char irq_name[20];
+	char irq_name[32];
 
 	fsl_qdma->error_irq =
 		platform_get_irq_byname(pdev, "qdma-error");
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code
  2024-01-19 12:49 [PATCH 1/3] dmaengine: shdma: increase size of 'dev_id' Vinod Koul
  2024-01-19 12:49 ` [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name' Vinod Koul
@ 2024-01-19 12:49 ` Vinod Koul
  2024-01-22  9:32   ` Serge Semin
  1 sibling, 1 reply; 5+ messages in thread
From: Vinod Koul @ 2024-01-19 12:49 UTC (permalink / raw)
  To: dmaengine, Vinod Koul

We seem to have hit warnings of 'output may be truncated' which is fixed
by increasing the size of 'name'

drivers/dma/dw-edma/dw-hdma-v0-debugfs.c: In function ‘dw_hdma_v0_debugfs_on’:
drivers/dma/dw-edma/dw-hdma-v0-debugfs.c:125:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
  125 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
      |                                                  ^~

drivers/dma/dw-edma/dw-hdma-v0-debugfs.c: In function ‘dw_hdma_v0_debugfs_on’:
drivers/dma/dw-edma/dw-hdma-v0-debugfs.c:142:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
  142 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
      |                                                  ^~
drivers/dma/dw-edma/dw-edma-v0-debugfs.c: In function ‘dw_edma_debugfs_regs_wr’:
drivers/dma/dw-edma/dw-edma-v0-debugfs.c:193:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
  193 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
      |                                                  ^~

Signed-off-by: Vinod Koul <vkoul@kernel.org>
---
 drivers/dma/dw-edma/dw-edma-v0-debugfs.c | 4 ++--
 drivers/dma/dw-edma/dw-hdma-v0-debugfs.c | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
index 0745d9e7d259..406f169b09a7 100644
--- a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
+++ b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
@@ -176,7 +176,7 @@ dw_edma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
 	};
 	struct dentry *regs_dent, *ch_dent;
 	int nr_entries, i;
-	char name[16];
+	char name[32];
 
 	regs_dent = debugfs_create_dir(WRITE_STR, dent);
 
@@ -239,7 +239,7 @@ static noinline_for_stack void dw_edma_debugfs_regs_rd(struct dw_edma *dw,
 	};
 	struct dentry *regs_dent, *ch_dent;
 	int nr_entries, i;
-	char name[16];
+	char name[32];
 
 	regs_dent = debugfs_create_dir(READ_STR, dent);
 
diff --git a/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c b/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
index 520c81978b08..dcdc57fe976c 100644
--- a/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
+++ b/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
@@ -116,7 +116,7 @@ static void dw_hdma_debugfs_regs_ch(struct dw_edma *dw, enum dw_edma_dir dir,
 static void dw_hdma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
 {
 	struct dentry *regs_dent, *ch_dent;
-	char name[16];
+	char name[32];
 	int i;
 
 	regs_dent = debugfs_create_dir(WRITE_STR, dent);
@@ -133,7 +133,7 @@ static void dw_hdma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
 static void dw_hdma_debugfs_regs_rd(struct dw_edma *dw, struct dentry *dent)
 {
 	struct dentry *regs_dent, *ch_dent;
-	char name[16];
+	char name[32];
 	int i;
 
 	regs_dent = debugfs_create_dir(READ_STR, dent);
-- 
2.43.0


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name'
  2024-01-19 12:49 ` [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name' Vinod Koul
@ 2024-01-19 17:18   ` Frank Li
  0 siblings, 0 replies; 5+ messages in thread
From: Frank Li @ 2024-01-19 17:18 UTC (permalink / raw)
  To: Vinod Koul; +Cc: dmaengine

On Fri, Jan 19, 2024 at 06:19:43PM +0530, Vinod Koul wrote:
> We seem to have hit warnings of 'output may be truncated' which is fixed
> by increasing the size of 'irq_name'
> 
> drivers/dma/fsl-qdma.c: In function ‘fsl_qdma_irq_init’:
> drivers/dma/fsl-qdma.c:824:46: error: ‘%d’ directive writing between 1 and 11 bytes into a region of size 10 [-Werror=format-overflow=]
>   824 |                 sprintf(irq_name, "qdma-queue%d", i);
>       |                                              ^~
> drivers/dma/fsl-qdma.c:824:35: note: directive argument in the range [-2147483641, 2147483646]
>   824 |                 sprintf(irq_name, "qdma-queue%d", i);
>       |                                   ^~~~~~~~~~~~~~
> drivers/dma/fsl-qdma.c:824:17: note: ‘sprintf’ output between 12 and 22 bytes into a destination of size 20
>   824 |                 sprintf(irq_name, "qdma-queue%d", i);
>       |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 
> Signed-off-by: Vinod Koul <vkoul@kernel.org>
> ---

Reviewed-by: Frank Li <Frank.Li@nxp.com>

>  drivers/dma/fsl-qdma.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/dma/fsl-qdma.c b/drivers/dma/fsl-qdma.c
> index 47cb28468049..a1d0aa63142a 100644
> --- a/drivers/dma/fsl-qdma.c
> +++ b/drivers/dma/fsl-qdma.c
> @@ -805,7 +805,7 @@ fsl_qdma_irq_init(struct platform_device *pdev,
>  	int i;
>  	int cpu;
>  	int ret;
> -	char irq_name[20];
> +	char irq_name[32];
>  
>  	fsl_qdma->error_irq =
>  		platform_get_irq_byname(pdev, "qdma-error");
> -- 
> 2.43.0
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code
  2024-01-19 12:49 ` [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code Vinod Koul
@ 2024-01-22  9:32   ` Serge Semin
  0 siblings, 0 replies; 5+ messages in thread
From: Serge Semin @ 2024-01-22  9:32 UTC (permalink / raw)
  To: Vinod Koul; +Cc: dmaengine, Manivannan Sadhasivam

Hi Vinod

On Fri, Jan 19, 2024 at 06:19:44PM +0530, Vinod Koul wrote:
> We seem to have hit warnings of 'output may be truncated' which is fixed
> by increasing the size of 'name'
> 
> drivers/dma/dw-edma/dw-hdma-v0-debugfs.c: In function ‘dw_hdma_v0_debugfs_on’:
> drivers/dma/dw-edma/dw-hdma-v0-debugfs.c:125:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
>   125 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
>       |                                                  ^~
> 
> drivers/dma/dw-edma/dw-hdma-v0-debugfs.c: In function ‘dw_hdma_v0_debugfs_on’:
> drivers/dma/dw-edma/dw-hdma-v0-debugfs.c:142:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
>   142 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
>       |                                                  ^~
> drivers/dma/dw-edma/dw-edma-v0-debugfs.c: In function ‘dw_edma_debugfs_regs_wr’:
> drivers/dma/dw-edma/dw-edma-v0-debugfs.c:193:50: error: ‘%d’ directive output may be truncated writing between 1 and 11 bytes into a region of size 8 [-Werror=format-truncation=]
>   193 |                 snprintf(name, sizeof(name), "%s:%d", CHANNEL_STR, i);
>       |                                                  ^~
> 
> Signed-off-by: Vinod Koul <vkoul@kernel.org>

Thanks for submitting the patch. I've got a similar one hanging out in
my local repo. I was going to submit it together with a few another
fixes, but then I had to switch my efforts to another task and
successfully forgot about this warning fix.

Please note the warning you stated above is false-positive in this
context since a name of the channel is printed to the string buffer in a
format like "channel:<int>", where "<int>" is the channel number and
which never supposed to be greater than eight. Anyway here is my tag:

Reviewed-by: Serge Semin <fancer.lancer@gmail.com>

Here are three more tags which might be also reasonable to add:

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202311030041.DznTeuS5-lkp@intel.com/
Closes: https://lore.kernel.org/oe-kbuild-all/202311030809.CjufIFaP-lkp@intel.com/

-Serge(y)

> ---
>  drivers/dma/dw-edma/dw-edma-v0-debugfs.c | 4 ++--
>  drivers/dma/dw-edma/dw-hdma-v0-debugfs.c | 4 ++--
>  2 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
> index 0745d9e7d259..406f169b09a7 100644
> --- a/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
> +++ b/drivers/dma/dw-edma/dw-edma-v0-debugfs.c
> @@ -176,7 +176,7 @@ dw_edma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
>  	};
>  	struct dentry *regs_dent, *ch_dent;
>  	int nr_entries, i;
> -	char name[16];
> +	char name[32];
>  
>  	regs_dent = debugfs_create_dir(WRITE_STR, dent);
>  
> @@ -239,7 +239,7 @@ static noinline_for_stack void dw_edma_debugfs_regs_rd(struct dw_edma *dw,
>  	};
>  	struct dentry *regs_dent, *ch_dent;
>  	int nr_entries, i;
> -	char name[16];
> +	char name[32];
>  
>  	regs_dent = debugfs_create_dir(READ_STR, dent);
>  
> diff --git a/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c b/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
> index 520c81978b08..dcdc57fe976c 100644
> --- a/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
> +++ b/drivers/dma/dw-edma/dw-hdma-v0-debugfs.c
> @@ -116,7 +116,7 @@ static void dw_hdma_debugfs_regs_ch(struct dw_edma *dw, enum dw_edma_dir dir,
>  static void dw_hdma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
>  {
>  	struct dentry *regs_dent, *ch_dent;
> -	char name[16];
> +	char name[32];
>  	int i;
>  
>  	regs_dent = debugfs_create_dir(WRITE_STR, dent);
> @@ -133,7 +133,7 @@ static void dw_hdma_debugfs_regs_wr(struct dw_edma *dw, struct dentry *dent)
>  static void dw_hdma_debugfs_regs_rd(struct dw_edma *dw, struct dentry *dent)
>  {
>  	struct dentry *regs_dent, *ch_dent;
> -	char name[16];
> +	char name[32];
>  	int i;
>  
>  	regs_dent = debugfs_create_dir(READ_STR, dent);
> -- 
> 2.43.0
> 
> 

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-01-22  9:32 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-01-19 12:49 [PATCH 1/3] dmaengine: shdma: increase size of 'dev_id' Vinod Koul
2024-01-19 12:49 ` [PATCH 2/3] dmaengine: fsl-qdma: increase size of 'irq_name' Vinod Koul
2024-01-19 17:18   ` Frank Li
2024-01-19 12:49 ` [PATCH 3/3] dmaengine: dw-edma: increase size of 'name' in debugfs code Vinod Koul
2024-01-22  9:32   ` Serge Semin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox