Hi Julien,

On 16.05.2022 12:19, Julien Grall wrote:
> Hi Michal,
> 
> On 06/05/2022 10:42, Michal Orzel wrote:
>> Modify macros to evaluate all the arguments and make sure the arguments
>> are evaluated only once. Introduce following intermediate macros:
>> gnttab_status_gfn_, gnttab_shared_gfn_ that do not take domain as a
>> parameter. These are to be used locally and allow us to avoid passing
>> NULL from gnttab_get_frame_gfn to the respective macros (without _ suffix).
>> Make use of a domain parameter from gnttab_shared_gfn and gnttab_status_gfn
>> by adding an ASSERT.
>>
>> Signed-off-by: Michal Orzel <michal.or...@arm.com>
> 
> Most of the helpers below are going to disappear with Oleksandr latest work 
> (see [1]).
> 
> Looking at Oleksandr's patch, I think only gnttab_set_frame_gfn() would end 
> up to use one of the macro parameters twice. So I would like to suggest to 
> chat with Oleksandr if we can tweak his patch (can be done on commit) or we 
> rebase this patch on top of his work.
> 
> Cheers,
> 
> [1] 
> https://lore.kernel.org/xen-devel/1652294845-13980-1-git-send-email-olekst...@gmail.com/
> 

By looking at Oleksandr patch:
1. there are 2 macros: gnttab_set_frame_gfn, gnttab_need_iommu_mapping that use 
one of the macro parameters twice.
2. gnttab_get_frame_gfn still passes NULL as a domain parameter to 
gnttab_shared_gfn/gnttab_status_gfn that do not evaluate domain parameter

I agree that point 1 could be fixed on commit but point 2 requires in my 
opinion adding intermediate macros to avoid passing NULL (just like I did).

As this would require more work from Oleksandr, I'm ok to rebase my patch on 
top of his work once merged.

Cheers,
Michal

Reply via email to