habanalabs: change unused extern decl of hdev to forward decl of hl_device

Message ID 20230208155450.1941608-1-trix@redhat.com
State New
Headers
Series habanalabs: change unused extern decl of hdev to forward decl of hl_device |

Commit Message

Tom Rix Feb. 8, 2023, 3:54 p.m. UTC
  Building with clang W=2 has several similar warnings
drivers/accel/habanalabs/common/decoder.c:46:51: error: declaration shadows a variable in the global scope [-Werror,-Wshadow]
static void dec_error_intr_work(struct hl_device *hdev, u32 base_addr, u32 core_id)
                                                  ^
drivers/accel/habanalabs/common/security.h:13:26: note: previous declaration is here
extern struct hl_device *hdev;
                         ^

There is no global definition of hdev, so the extern is not needed.
Searched with
grep -r '^struct' . | grep hl_dev

Change to an forward decl to resolve these issues
drivers/accel/habanalabs/common/mmu/../security.h:133:40: error: ‘struct hl_device’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
  133 |         bool (*skip_block_hook)(struct hl_device *hdev,
      |                                        ^~~~~~~~~

Signed-off-by: Tom Rix <trix@redhat.com>
---
 drivers/accel/habanalabs/common/security.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
  

Comments

Stanislaw Gruszka Feb. 13, 2023, 7:12 a.m. UTC | #1
On Wed, Feb 08, 2023 at 07:54:50AM -0800, Tom Rix wrote:
> Building with clang W=2 has several similar warnings
> drivers/accel/habanalabs/common/decoder.c:46:51: error: declaration shadows a variable in the global scope [-Werror,-Wshadow]
> static void dec_error_intr_work(struct hl_device *hdev, u32 base_addr, u32 core_id)
>                                                   ^
> drivers/accel/habanalabs/common/security.h:13:26: note: previous declaration is here
> extern struct hl_device *hdev;
>                          ^
> 
> There is no global definition of hdev, so the extern is not needed.
> Searched with
> grep -r '^struct' . | grep hl_dev
> 
> Change to an forward decl to resolve these issues
> drivers/accel/habanalabs/common/mmu/../security.h:133:40: error: ‘struct hl_device’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
>   133 |         bool (*skip_block_hook)(struct hl_device *hdev,
>       |                                        ^~~~~~~~~
> 
> Signed-off-by: Tom Rix <trix@redhat.com>
Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>

> ---
>  drivers/accel/habanalabs/common/security.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/accel/habanalabs/common/security.h b/drivers/accel/habanalabs/common/security.h
> index 234b4a6ed8bc..d7a3b3e82ea4 100644
> --- a/drivers/accel/habanalabs/common/security.h
> +++ b/drivers/accel/habanalabs/common/security.h
> @@ -10,7 +10,7 @@
>  
>  #include <linux/io-64-nonatomic-lo-hi.h>
>  
> -extern struct hl_device *hdev;
> +struct hl_device;
>  
>  /* special blocks */
>  #define HL_MAX_NUM_OF_GLBL_ERR_CAUSE		10
> -- 
> 2.26.3
>
  
Oded Gabbay Feb. 16, 2023, 2:40 p.m. UTC | #2
On Mon, Feb 13, 2023 at 9:12 AM Stanislaw Gruszka
<stanislaw.gruszka@linux.intel.com> wrote:
>
> On Wed, Feb 08, 2023 at 07:54:50AM -0800, Tom Rix wrote:
> > Building with clang W=2 has several similar warnings
> > drivers/accel/habanalabs/common/decoder.c:46:51: error: declaration shadows a variable in the global scope [-Werror,-Wshadow]
> > static void dec_error_intr_work(struct hl_device *hdev, u32 base_addr, u32 core_id)
> >                                                   ^
> > drivers/accel/habanalabs/common/security.h:13:26: note: previous declaration is here
> > extern struct hl_device *hdev;
> >                          ^
> >
> > There is no global definition of hdev, so the extern is not needed.
> > Searched with
> > grep -r '^struct' . | grep hl_dev
> >
> > Change to an forward decl to resolve these issues
> > drivers/accel/habanalabs/common/mmu/../security.h:133:40: error: ‘struct hl_device’ declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
> >   133 |         bool (*skip_block_hook)(struct hl_device *hdev,
> >       |                                        ^~~~~~~~~
> >
> > Signed-off-by: Tom Rix <trix@redhat.com>
> Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@linux.intel.com>
>
> > ---
> >  drivers/accel/habanalabs/common/security.h | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/accel/habanalabs/common/security.h b/drivers/accel/habanalabs/common/security.h
> > index 234b4a6ed8bc..d7a3b3e82ea4 100644
> > --- a/drivers/accel/habanalabs/common/security.h
> > +++ b/drivers/accel/habanalabs/common/security.h
> > @@ -10,7 +10,7 @@
> >
> >  #include <linux/io-64-nonatomic-lo-hi.h>
> >
> > -extern struct hl_device *hdev;
> > +struct hl_device;
> >
> >  /* special blocks */
> >  #define HL_MAX_NUM_OF_GLBL_ERR_CAUSE         10
> > --
> > 2.26.3
> >
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Thanks, applied to -next.
Oded
  

Patch

diff --git a/drivers/accel/habanalabs/common/security.h b/drivers/accel/habanalabs/common/security.h
index 234b4a6ed8bc..d7a3b3e82ea4 100644
--- a/drivers/accel/habanalabs/common/security.h
+++ b/drivers/accel/habanalabs/common/security.h
@@ -10,7 +10,7 @@ 
 
 #include <linux/io-64-nonatomic-lo-hi.h>
 
-extern struct hl_device *hdev;
+struct hl_device;
 
 /* special blocks */
 #define HL_MAX_NUM_OF_GLBL_ERR_CAUSE		10