lkml.org 
[lkml]   [2022]   [Jan]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 19/26] x86/tdx: Make pages shared in ioremap()
From
Date
On 1/3/22 7:15 AM, Kirill A. Shutemov wrote:
> On Mon, Jan 03, 2022 at 03:29:44PM +0100, Borislav Petkov wrote:
>> On Mon, Jan 03, 2022 at 05:17:05PM +0300, Kirill A. Shutemov wrote:
>>> I'm not sure how to unwind this dependency hell. Any clues?
>> Forward-declaration maybe?
>>
>> I.e., something like
>>
>> struct task_struct;
>>
>> at the top of arch/x86/include/asm/switch_to.h, for example...
> Forward-declaration only works if you refer the struct/union by pointer,
> not value.
>
> And pgprot_t is not always a struct and when it is a struct it is
> anonymous.
>
> See "git grep 'typedef.*pgprot_t;'".

In the end, the new functions get used like this:

prot = pgprot_decrypted(prot);

I think they _could_ be:

pgprot_set_decrypted(&prot);

Which would let you have a declaration like this:

extern void pgprot_cc_set_decrypted(pgprot_t *prot);

It does not exactly give me warm and fuzzy feelings, but it would work
around the header problem.

\
 
 \ /
  Last update: 2022-01-03 17:50    [W:0.179 / U:0.944 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site