x86/mm: fix compilation error for unknown type name pgprot_t
diff mbox series

Message ID 20200420082231.4202-1-abhsahu@nvidia.com
State New
Headers show
Series
  • x86/mm: fix compilation error for unknown type name pgprot_t
Related show

Commit Message

Abhishek Sahu April 20, 2020, 8:22 a.m. UTC
commit 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
added the function __set_memory_prot() which uses pgprot_t in
function prototype. The currently included header files in
<arch/x86/include/asm/set_memory.h> do not include type name
pgprot_t. The pgprot_t is defined in <asm/pgtable_types.h>.

Fixes: 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
Signed-off-by: Abhishek Sahu <abhsahu@nvidia.com>
---
 arch/x86/include/asm/set_memory.h | 1 +
 1 file changed, 1 insertion(+)

Comments

Logan Gunthorpe April 20, 2020, 4:44 p.m. UTC | #1
On 2020-04-20 2:22 a.m., Abhishek Sahu wrote:
> commit 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
> added the function __set_memory_prot() which uses pgprot_t in
> function prototype. The currently included header files in
> <arch/x86/include/asm/set_memory.h> do not include type name
> pgprot_t. The pgprot_t is defined in <asm/pgtable_types.h>.
> 
> Fixes: 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
> Signed-off-by: Abhishek Sahu <abhsahu@nvidia.com>

I assume this is only hit with a specific driver or something that
includes set_memory.h without including pgtable_types.h before hand.

It certainly compiles fine for me and the kbuild robot has had lots of
time to test it with random configs.

Reviewed-by: Logan Gunthorpe <logang@deltatee.com>

Thanks,

Logan
Abhishek Sahu April 21, 2020, 5:48 a.m. UTC | #2
On 4/20/2020 10:14 PM, Logan Gunthorpe wrote:
> External email: Use caution opening links or attachments
> 
> 	
> On 2020-04-20 2:22 a.m., Abhishek Sahu wrote:
>> commit 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>> added the function __set_memory_prot() which uses pgprot_t in
>> function prototype. The currently included header files in
>> <arch/x86/include/asm/set_memory.h> do not include type name
>> pgprot_t. The pgprot_t is defined in <asm/pgtable_types.h>.
>>
>> Fixes: 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>> Signed-off-by: Abhishek Sahu <abhsahu@nvidia.com>
> 
> I assume this is only hit with a specific driver or something that
> includes set_memory.h without including pgtable_types.h before hand.
> 
> It certainly compiles fine for me and the kbuild robot has had lots of
> time to test it with random configs.
> 
> Reviewed-by: Logan Gunthorpe <logang@deltatee.com>

  Thanks Logan.

  Yes. The mainline is compiling fine with default config.
  This problem is coming while compiling Out of tree NVIDIA driver.
  But this problem can happen for the drivers which don't include
  <pgtable_types.h>. I am not sure if this problem will come with
  some other configs. Normally, the header files should not be
  dependent upon the callers.

  Regards,
  Abhishek
Abhishek Sahu April 27, 2020, 3:11 p.m. UTC | #3
On 4/21/2020 11:18 AM, Abhishek Sahu wrote:
> On 4/20/2020 10:14 PM, Logan Gunthorpe wrote:
>> On 2020-04-20 2:22 a.m., Abhishek Sahu wrote:
>>> commit 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>>> added the function __set_memory_prot() which uses pgprot_t in
>>> function prototype. The currently included header files in
>>> <arch/x86/include/asm/set_memory.h> do not include type name
>>> pgprot_t. The pgprot_t is defined in <asm/pgtable_types.h>.
>>>
>>> Fixes: 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>>> Signed-off-by: Abhishek Sahu <abhsahu@nvidia.com>
>>
>> I assume this is only hit with a specific driver or something that
>> includes set_memory.h without including pgtable_types.h before hand.
>>
>> It certainly compiles fine for me and the kbuild robot has had lots of
>> time to test it with random configs.
>>
>> Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
> 
>   Thanks Logan.
> 
>   Yes. The mainline is compiling fine with default config.
>   This problem is coming while compiling Out of tree NVIDIA driver.
>   But this problem can happen for the drivers which don't include
>   <pgtable_types.h>. I am not sure if this problem will come with
>   some other configs. Normally, the header files should not be
>   dependent upon the callers.
> 

 Is it possible to get this patch merged for next rc of 5.7.
 This issue started coming from 5.7-rc1.

 Thanks,
 Abhishek
Abhishek Sahu May 13, 2020, 7:28 a.m. UTC | #4
On 4/27/2020 8:41 PM, Abhishek Sahu wrote:
> On 4/21/2020 11:18 AM, Abhishek Sahu wrote:
>> On 4/20/2020 10:14 PM, Logan Gunthorpe wrote:
>>> On 2020-04-20 2:22 a.m., Abhishek Sahu wrote:
>>>> commit 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>>>> added the function __set_memory_prot() which uses pgprot_t in
>>>> function prototype. The currently included header files in
>>>> <arch/x86/include/asm/set_memory.h> do not include type name
>>>> pgprot_t. The pgprot_t is defined in <asm/pgtable_types.h>.
>>>>
>>>> Fixes: 30796e18c299 ("x86/mm: introduce __set_memory_prot()")
>>>> Signed-off-by: Abhishek Sahu <abhsahu@nvidia.com>
>>>
>>> I assume this is only hit with a specific driver or something that
>>> includes set_memory.h without including pgtable_types.h before hand.
>>>
>>> It certainly compiles fine for me and the kbuild robot has had lots of
>>> time to test it with random configs.
>>>
>>> Reviewed-by: Logan Gunthorpe <logang@deltatee.com>
>>
>>   Thanks Logan.
>>
>>   Yes. The mainline is compiling fine with default config.
>>   This problem is coming while compiling Out of tree NVIDIA driver.
>>   But this problem can happen for the drivers which don't include
>>   <pgtable_types.h>. I am not sure if this problem will come with
>>   some other configs. Normally, the header files should not be
>>   dependent upon the callers.
>>
> 
>  Is it possible to get this patch merged for next rc of 5.7.
>  This issue started coming from 5.7-rc1.
> 

 Could someone help in reviewing and getting this merged in the
 next rc of 5.7 version. The NVIDIA driver compilation is failing
 from 5.7-rc1. This issue can happen for any other driver also
 which is not including <asm/pgtable_types.h> in the driver.

 Thanks,
 Abhishek

Patch
diff mbox series

diff --git a/arch/x86/include/asm/set_memory.h b/arch/x86/include/asm/set_memory.h
index ec2c0a094b5d..3138087b0d9a 100644
--- a/arch/x86/include/asm/set_memory.h
+++ b/arch/x86/include/asm/set_memory.h
@@ -3,6 +3,7 @@ 
 #define _ASM_X86_SET_MEMORY_H
 
 #include <asm/page.h>
+#include <asm/pgtable_types.h>
 #include <asm-generic/set_memory.h>
 
 /*