parisc: fix compilation errrors
diff mbox series

Message ID 20190815205305.1382-1-cai@lca.pw
State Accepted, archived
Headers show
Series
  • parisc: fix compilation errrors
Related show

Commit Message

Qian Cai Aug. 15, 2019, 8:53 p.m. UTC
The commit 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix
variable 'p4d' set but not used") converted a few functions from macros
to static inline, which causes parisc to complain,

In file included from ./include/asm-generic/4level-fixup.h:38:0,
                 from ./arch/parisc/include/asm/pgtable.h:5,
                 from ./arch/parisc/include/asm/io.h:6,
                 from ./include/linux/io.h:13,
                 from sound/core/memory.c:9:
./include/asm-generic/5level-fixup.h:14:18: error: unknown type name
'pgd_t'; did you mean 'pid_t'?
 #define p4d_t    pgd_t
                  ^
./include/asm-generic/5level-fixup.h:24:28: note: in expansion of macro
'p4d_t'
 static inline int p4d_none(p4d_t p4d)
                            ^~~~~

It is because "4level-fixup.h" is included before "asm/page.h" where
"pgd_t" is defined.

Fixes: 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Qian Cai <cai@lca.pw>
---
 arch/parisc/include/asm/pgtable.h | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

Comments

Guenter Roeck Aug. 15, 2019, 9:02 p.m. UTC | #1
On Thu, Aug 15, 2019 at 04:53:05PM -0400, Qian Cai wrote:
> The commit 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix
> variable 'p4d' set but not used") converted a few functions from macros
> to static inline, which causes parisc to complain,
> 
> In file included from ./include/asm-generic/4level-fixup.h:38:0,
>                  from ./arch/parisc/include/asm/pgtable.h:5,
>                  from ./arch/parisc/include/asm/io.h:6,
>                  from ./include/linux/io.h:13,
>                  from sound/core/memory.c:9:
> ./include/asm-generic/5level-fixup.h:14:18: error: unknown type name
> 'pgd_t'; did you mean 'pid_t'?
>  #define p4d_t    pgd_t
>                   ^
> ./include/asm-generic/5level-fixup.h:24:28: note: in expansion of macro
> 'p4d_t'
>  static inline int p4d_none(p4d_t p4d)
>                             ^~~~~
> 
> It is because "4level-fixup.h" is included before "asm/page.h" where
> "pgd_t" is defined.
> 
> Fixes: 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used")
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: Qian Cai <cai@lca.pw>

Tested-by: Guenter Roeck <linux@roeck-us.net>
Helge Deller Aug. 22, 2019, 8:53 p.m. UTC | #2
On 15.08.19 23:02, Guenter Roeck wrote:
> On Thu, Aug 15, 2019 at 04:53:05PM -0400, Qian Cai wrote:
>> The commit 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix
>> variable 'p4d' set but not used") converted a few functions from macros
>> to static inline, which causes parisc to complain,
>>
>> In file included from ./include/asm-generic/4level-fixup.h:38:0,
>>                   from ./arch/parisc/include/asm/pgtable.h:5,
>>                   from ./arch/parisc/include/asm/io.h:6,
>>                   from ./include/linux/io.h:13,
>>                   from sound/core/memory.c:9:
>> ./include/asm-generic/5level-fixup.h:14:18: error: unknown type name
>> 'pgd_t'; did you mean 'pid_t'?
>>   #define p4d_t    pgd_t
>>                    ^
>> ./include/asm-generic/5level-fixup.h:24:28: note: in expansion of macro
>> 'p4d_t'
>>   static inline int p4d_none(p4d_t p4d)
>>                              ^~~~~
>>
>> It is because "4level-fixup.h" is included before "asm/page.h" where
>> "pgd_t" is defined.
>>
>> Fixes: 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used")
>> Reported-by: Guenter Roeck <linux@roeck-us.net>
>> Signed-off-by: Qian Cai <cai@lca.pw>
>
> Tested-by: Guenter Roeck <linux@roeck-us.net>

Acked-by: Helge Deller <deller@gmx.de>

Helge
Guenter Roeck Aug. 22, 2019, 11:04 p.m. UTC | #3
On 8/22/19 1:53 PM, Helge Deller wrote:
> On 15.08.19 23:02, Guenter Roeck wrote:
>> On Thu, Aug 15, 2019 at 04:53:05PM -0400, Qian Cai wrote:
>>> The commit 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix
>>> variable 'p4d' set but not used") converted a few functions from macros
>>> to static inline, which causes parisc to complain,
>>>
>>> In file included from ./include/asm-generic/4level-fixup.h:38:0,
>>>                   from ./arch/parisc/include/asm/pgtable.h:5,
>>>                   from ./arch/parisc/include/asm/io.h:6,
>>>                   from ./include/linux/io.h:13,
>>>                   from sound/core/memory.c:9:
>>> ./include/asm-generic/5level-fixup.h:14:18: error: unknown type name
>>> 'pgd_t'; did you mean 'pid_t'?
>>>   #define p4d_t    pgd_t
>>>                    ^
>>> ./include/asm-generic/5level-fixup.h:24:28: note: in expansion of macro
>>> 'p4d_t'
>>>   static inline int p4d_none(p4d_t p4d)
>>>                              ^~~~~
>>>
>>> It is because "4level-fixup.h" is included before "asm/page.h" where
>>> "pgd_t" is defined.
>>>
>>> Fixes: 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used")
>>> Reported-by: Guenter Roeck <linux@roeck-us.net>
>>> Signed-off-by: Qian Cai <cai@lca.pw>
>>
>> Tested-by: Guenter Roeck <linux@roeck-us.net>
> 
> Acked-by: Helge Deller <deller@gmx.de>
> 
> Helge
> 

Any chance to push this patch into mainline anytime soon ? It has been applied
to -next, but all parisc builds in mainline are still broken.

Thanks,
Guenter
Andrew Morton Aug. 22, 2019, 11:15 p.m. UTC | #4
On Thu, 22 Aug 2019 16:04:38 -0700 Guenter Roeck <linux@roeck-us.net> wrote:

> >>> Fixes: 0cfaee2af3a0 ("include/asm-generic/5level-fixup.h: fix variable 'p4d' set but not used")
> >>> Reported-by: Guenter Roeck <linux@roeck-us.net>
> >>> Signed-off-by: Qian Cai <cai@lca.pw>
> >>
> >> Tested-by: Guenter Roeck <linux@roeck-us.net>
> > 
> > Acked-by: Helge Deller <deller@gmx.de>
> > 
> > Helge
> > 
> 
> Any chance to push this patch into mainline anytime soon ? It has been applied
> to -next, but all parisc builds in mainline are still broken.

I'll be including it in tomorrow's patchpile->Linus.

Patch
diff mbox series

diff --git a/arch/parisc/include/asm/pgtable.h b/arch/parisc/include/asm/pgtable.h
index a39b079e73f2..6d58c1739b42 100644
--- a/arch/parisc/include/asm/pgtable.h
+++ b/arch/parisc/include/asm/pgtable.h
@@ -2,6 +2,7 @@ 
 #ifndef _PARISC_PGTABLE_H
 #define _PARISC_PGTABLE_H
 
+#include <asm/page.h>
 #include <asm-generic/4level-fixup.h>
 
 #include <asm/fixmap.h>
@@ -98,8 +99,6 @@  static inline void purge_tlb_entries(struct mm_struct *mm, unsigned long addr)
 
 #endif /* !__ASSEMBLY__ */
 
-#include <asm/page.h>
-
 #define pte_ERROR(e) \
 	printk("%s:%d: bad pte %08lx.\n", __FILE__, __LINE__, pte_val(e))
 #define pmd_ERROR(e) \