Re: [PATCH] x86/mm: fix compilation error for unknown type name pgprot_t

From: Abhishek Sahu
Date: Tue Apr 21 2020 - 01:48:49 EST


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@xxxxxxxxxx>
>
> 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@xxxxxxxxxxxx>

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