sparc32: cacheflush_32: Declare struct page

Message ID 1530333910-31209-1-git-send-email-linux@roeck-us.net
State Under Review
Delegated to: David Miller
Headers show
Series
  • sparc32: cacheflush_32: Declare struct page
Related show

Commit Message

Guenter Roeck June 30, 2018, 4:45 a.m.
Building allmodconfig images for sparc32 generates warnings such as

arch/sparc/include/asm/cacheflush_32.h:40:37: warning:
	'struct page' declared inside parameter list

This results in odd warnings such as

arch/sparc/include/asm/cacheflush_32.h:40:6: note:
	expected 'struct page *' but argument is of type 'struct page *'

With recent compilers (gcc 5.5.0 and later), this warning turns into
a build error when compiling drivers/staging/media/omap4iss/iss_video.c.

./include/linux/highmem.h: In function 'copy_user_highpage':
./include/linux/highmem.h:233:36: error:
	passing argument 1 of 'sparc_flush_page_to_ram'
				from incompatible pointer type

Declare struct page to fix the problem.

Fixes: 84fc727ed49c ("media: omap4iss: make it build with COMPILE_TEST")
Cc: Mauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
 arch/sparc/include/asm/cacheflush_32.h | 2 ++
 1 file changed, 2 insertions(+)

Patch

diff --git a/arch/sparc/include/asm/cacheflush_32.h b/arch/sparc/include/asm/cacheflush_32.h
index fb66094a2c30..acb072c71e42 100644
--- a/arch/sparc/include/asm/cacheflush_32.h
+++ b/arch/sparc/include/asm/cacheflush_32.h
@@ -4,6 +4,8 @@ 
 
 #include <asm/cachetlb_32.h>
 
+struct page;
+
 #define flush_cache_all() \
 	sparc32_cachetlb_ops->cache_all()
 #define flush_cache_mm(mm) \