linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/2] Small fixes around cacheflush.h
@ 2020-06-22 23:47 Nathan Chancellor
  2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
  2020-06-22 23:47 ` [PATCH 2/2] asm-generic: Make cacheflush.h self-contained Nathan Chancellor
  0 siblings, 2 replies; 7+ messages in thread
From: Nathan Chancellor @ 2020-06-22 23:47 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Laurent Pinchart, Mauro Carvalho Chehab, Arnd Bergmann,
	Christoph Hellwig, Geert Uytterhoeven, linux-media, linux-kernel,
	linux-arch, clang-built-linux

Hi all,

These two patches are the culmination of the small discussion here:

https://lore.kernel.org/lkml/CAMuHMdVSduTOi5bUgF9sLQdGADwyL1+qALWsKgin1TeOLGhAKQ@mail.gmail.com/

I have fallen behind on fixing issues so sorry for not sending these
sooner and letting these warnings slip into mainline. Please let me know
if there are any comments or concerns. They are two completely
independent patches so if they need to be routed via separate trees,
that is fine. It was just easier to send them together since they are
dealing with the same problem.

Cheers,
Nathan



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

* [PATCH 1/2] media: omap3isp: Remove cacheflush.h
  2020-06-22 23:47 [PATCH 0/2] Small fixes around cacheflush.h Nathan Chancellor
@ 2020-06-22 23:47 ` Nathan Chancellor
  2020-06-23  1:19   ` Laurent Pinchart
                     ` (2 more replies)
  2020-06-22 23:47 ` [PATCH 2/2] asm-generic: Make cacheflush.h self-contained Nathan Chancellor
  1 sibling, 3 replies; 7+ messages in thread
From: Nathan Chancellor @ 2020-06-22 23:47 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Laurent Pinchart, Mauro Carvalho Chehab, Arnd Bergmann,
	Christoph Hellwig, Geert Uytterhoeven, linux-media, linux-kernel,
	linux-arch, clang-built-linux, Nathan Chancellor

After mm.h was removed from the asm-generic version of cacheflush.h,
s390 allyesconfig shows several warnings of the following nature:

In file included from ./arch/s390/include/generated/asm/cacheflush.h:1,
                 from drivers/media/platform/omap3isp/isp.c:42:
./include/asm-generic/cacheflush.h:16:42: warning: 'struct mm_struct'
declared inside parameter list will not be visible outside of this
definition or declaration

As Geert and Laurent point out, this driver does not need this header in
the two files that include it. Remove it so there are no warnings.

Fixes: e0cf615d725c ("asm-generic: don't include <linux/mm.h> in cacheflush.h")
Suggested-by: Geert Uytterhoeven <geert@linux-m68k.org>
Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
---
 drivers/media/platform/omap3isp/isp.c      | 2 --
 drivers/media/platform/omap3isp/ispvideo.c | 1 -
 2 files changed, 3 deletions(-)

diff --git a/drivers/media/platform/omap3isp/isp.c b/drivers/media/platform/omap3isp/isp.c
index a4ee6b86663e..b91e472ee764 100644
--- a/drivers/media/platform/omap3isp/isp.c
+++ b/drivers/media/platform/omap3isp/isp.c
@@ -39,8 +39,6 @@
  *	Troy Laramy <t-laramy@ti.com>
  */
 
-#include <asm/cacheflush.h>
-
 #include <linux/clk.h>
 #include <linux/clkdev.h>
 #include <linux/delay.h>
diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c
index 10c214bd0903..1ac9aef70dff 100644
--- a/drivers/media/platform/omap3isp/ispvideo.c
+++ b/drivers/media/platform/omap3isp/ispvideo.c
@@ -18,7 +18,6 @@
 #include <linux/sched.h>
 #include <linux/slab.h>
 #include <linux/vmalloc.h>
-#include <asm/cacheflush.h>
 
 #include <media/v4l2-dev.h>
 #include <media/v4l2-ioctl.h>

base-commit: 27f11fea33608cbd321a97cbecfa2ef97dcc1821
-- 
2.27.0


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

* [PATCH 2/2] asm-generic: Make cacheflush.h self-contained
  2020-06-22 23:47 [PATCH 0/2] Small fixes around cacheflush.h Nathan Chancellor
  2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
@ 2020-06-22 23:47 ` Nathan Chancellor
  2020-06-23  6:15   ` Christoph Hellwig
  1 sibling, 1 reply; 7+ messages in thread
From: Nathan Chancellor @ 2020-06-22 23:47 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Laurent Pinchart, Mauro Carvalho Chehab, Arnd Bergmann,
	Christoph Hellwig, Geert Uytterhoeven, linux-media, linux-kernel,
	linux-arch, clang-built-linux, Nathan Chancellor

Currently, cacheflush.h has to be included after mm.h to avoid several
-Wvisibility warnings:

$ clang -Wvisibility -fsyntax-only include/asm-generic/cacheflush.h
include/asm-generic/cacheflush.h:16:42: warning: declaration of 'struct
mm_struct' will not be visible outside of this function [-Wvisibility]
static inline void flush_cache_mm(struct mm_struct *mm)
                                         ^
...
include/asm-generic/cacheflush.h:28:45: warning: declaration of 'struct
vm_area_struct' will not be visible outside of this function
[-Wvisibility]
static inline void flush_cache_range(struct vm_area_struct *vma,
                                            ^
...

Add a few forward declarations should that there are no warnings and the
ordering of the includes does not matter.

Fixes: e0cf615d725c ("asm-generic: don't include <linux/mm.h> in cacheflush.h")
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
---
 include/asm-generic/cacheflush.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/include/asm-generic/cacheflush.h b/include/asm-generic/cacheflush.h
index 907fa5d16494..093b743da596 100644
--- a/include/asm-generic/cacheflush.h
+++ b/include/asm-generic/cacheflush.h
@@ -2,6 +2,11 @@
 #ifndef _ASM_GENERIC_CACHEFLUSH_H
 #define _ASM_GENERIC_CACHEFLUSH_H
 
+struct address_space;
+struct mm_struct;
+struct page;
+struct vm_area_struct;
+
 /*
  * The cache doesn't need to be flushed when TLB entries change when
  * the cache is mapped to physical memory, not virtual memory
-- 
2.27.0


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

* Re: [PATCH 1/2] media: omap3isp: Remove cacheflush.h
  2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
@ 2020-06-23  1:19   ` Laurent Pinchart
  2020-06-23  6:15   ` Christoph Hellwig
  2020-06-23  6:20   ` Mauro Carvalho Chehab
  2 siblings, 0 replies; 7+ messages in thread
From: Laurent Pinchart @ 2020-06-23  1:19 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Mauro Carvalho Chehab, Arnd Bergmann,
	Christoph Hellwig, Geert Uytterhoeven, linux-media, linux-kernel,
	linux-arch, clang-built-linux

Hi Nathan,

Thank you for the patch.

On Mon, Jun 22, 2020 at 04:47:39PM -0700, Nathan Chancellor wrote:
> After mm.h was removed from the asm-generic version of cacheflush.h,
> s390 allyesconfig shows several warnings of the following nature:
> 
> In file included from ./arch/s390/include/generated/asm/cacheflush.h:1,
>                  from drivers/media/platform/omap3isp/isp.c:42:
> ./include/asm-generic/cacheflush.h:16:42: warning: 'struct mm_struct'
> declared inside parameter list will not be visible outside of this
> definition or declaration
> 
> As Geert and Laurent point out, this driver does not need this header in
> the two files that include it. Remove it so there are no warnings.
> 
> Fixes: e0cf615d725c ("asm-generic: don't include <linux/mm.h> in cacheflush.h")
> Suggested-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>

Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>

> ---
>  drivers/media/platform/omap3isp/isp.c      | 2 --
>  drivers/media/platform/omap3isp/ispvideo.c | 1 -
>  2 files changed, 3 deletions(-)
> 
> diff --git a/drivers/media/platform/omap3isp/isp.c b/drivers/media/platform/omap3isp/isp.c
> index a4ee6b86663e..b91e472ee764 100644
> --- a/drivers/media/platform/omap3isp/isp.c
> +++ b/drivers/media/platform/omap3isp/isp.c
> @@ -39,8 +39,6 @@
>   *	Troy Laramy <t-laramy@ti.com>
>   */
>  
> -#include <asm/cacheflush.h>
> -
>  #include <linux/clk.h>
>  #include <linux/clkdev.h>
>  #include <linux/delay.h>
> diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c
> index 10c214bd0903..1ac9aef70dff 100644
> --- a/drivers/media/platform/omap3isp/ispvideo.c
> +++ b/drivers/media/platform/omap3isp/ispvideo.c
> @@ -18,7 +18,6 @@
>  #include <linux/sched.h>
>  #include <linux/slab.h>
>  #include <linux/vmalloc.h>
> -#include <asm/cacheflush.h>
>  
>  #include <media/v4l2-dev.h>
>  #include <media/v4l2-ioctl.h>
> 
> base-commit: 27f11fea33608cbd321a97cbecfa2ef97dcc1821

-- 
Regards,

Laurent Pinchart

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

* Re: [PATCH 1/2] media: omap3isp: Remove cacheflush.h
  2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
  2020-06-23  1:19   ` Laurent Pinchart
@ 2020-06-23  6:15   ` Christoph Hellwig
  2020-06-23  6:20   ` Mauro Carvalho Chehab
  2 siblings, 0 replies; 7+ messages in thread
From: Christoph Hellwig @ 2020-06-23  6:15 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Laurent Pinchart, Mauro Carvalho Chehab,
	Arnd Bergmann, Christoph Hellwig, Geert Uytterhoeven,
	linux-media, linux-kernel, linux-arch, clang-built-linux

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>

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

* Re: [PATCH 2/2] asm-generic: Make cacheflush.h self-contained
  2020-06-22 23:47 ` [PATCH 2/2] asm-generic: Make cacheflush.h self-contained Nathan Chancellor
@ 2020-06-23  6:15   ` Christoph Hellwig
  0 siblings, 0 replies; 7+ messages in thread
From: Christoph Hellwig @ 2020-06-23  6:15 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Laurent Pinchart, Mauro Carvalho Chehab,
	Arnd Bergmann, Christoph Hellwig, Geert Uytterhoeven,
	linux-media, linux-kernel, linux-arch, clang-built-linux

Looks good,

Reviewed-by: Christoph Hellwig <hch@lst.de>

Stephen also just sent a very similar one.

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

* Re: [PATCH 1/2] media: omap3isp: Remove cacheflush.h
  2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
  2020-06-23  1:19   ` Laurent Pinchart
  2020-06-23  6:15   ` Christoph Hellwig
@ 2020-06-23  6:20   ` Mauro Carvalho Chehab
  2 siblings, 0 replies; 7+ messages in thread
From: Mauro Carvalho Chehab @ 2020-06-23  6:20 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Laurent Pinchart, Arnd Bergmann,
	Christoph Hellwig, Geert Uytterhoeven, linux-media, linux-kernel,
	linux-arch, clang-built-linux

Em Mon, 22 Jun 2020 16:47:39 -0700
Nathan Chancellor <natechancellor@gmail.com> escreveu:

> After mm.h was removed from the asm-generic version of cacheflush.h,
> s390 allyesconfig shows several warnings of the following nature:
> 
> In file included from ./arch/s390/include/generated/asm/cacheflush.h:1,
>                  from drivers/media/platform/omap3isp/isp.c:42:
> ./include/asm-generic/cacheflush.h:16:42: warning: 'struct mm_struct'
> declared inside parameter list will not be visible outside of this
> definition or declaration
> 
> As Geert and Laurent point out, this driver does not need this header in
> the two files that include it. Remove it so there are no warnings.
> 
> Fixes: e0cf615d725c ("asm-generic: don't include <linux/mm.h> in cacheflush.h")
> Suggested-by: Geert Uytterhoeven <geert@linux-m68k.org>
> Suggested-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
> Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>

Reviewed-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org>

> ---
>  drivers/media/platform/omap3isp/isp.c      | 2 --
>  drivers/media/platform/omap3isp/ispvideo.c | 1 -
>  2 files changed, 3 deletions(-)
> 
> diff --git a/drivers/media/platform/omap3isp/isp.c b/drivers/media/platform/omap3isp/isp.c
> index a4ee6b86663e..b91e472ee764 100644
> --- a/drivers/media/platform/omap3isp/isp.c
> +++ b/drivers/media/platform/omap3isp/isp.c
> @@ -39,8 +39,6 @@
>   *	Troy Laramy <t-laramy@ti.com>
>   */
>  
> -#include <asm/cacheflush.h>
> -
>  #include <linux/clk.h>
>  #include <linux/clkdev.h>
>  #include <linux/delay.h>
> diff --git a/drivers/media/platform/omap3isp/ispvideo.c b/drivers/media/platform/omap3isp/ispvideo.c
> index 10c214bd0903..1ac9aef70dff 100644
> --- a/drivers/media/platform/omap3isp/ispvideo.c
> +++ b/drivers/media/platform/omap3isp/ispvideo.c
> @@ -18,7 +18,6 @@
>  #include <linux/sched.h>
>  #include <linux/slab.h>
>  #include <linux/vmalloc.h>
> -#include <asm/cacheflush.h>
>  
>  #include <media/v4l2-dev.h>
>  #include <media/v4l2-ioctl.h>
> 
> base-commit: 27f11fea33608cbd321a97cbecfa2ef97dcc1821



Thanks,
Mauro

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

end of thread, other threads:[~2020-06-23  6:20 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-22 23:47 [PATCH 0/2] Small fixes around cacheflush.h Nathan Chancellor
2020-06-22 23:47 ` [PATCH 1/2] media: omap3isp: Remove cacheflush.h Nathan Chancellor
2020-06-23  1:19   ` Laurent Pinchart
2020-06-23  6:15   ` Christoph Hellwig
2020-06-23  6:20   ` Mauro Carvalho Chehab
2020-06-22 23:47 ` [PATCH 2/2] asm-generic: Make cacheflush.h self-contained Nathan Chancellor
2020-06-23  6:15   ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).