[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v7 09/15] efi: use new page table APIs in copy_mapping
On Tue, 2020-07-14 at 14:42 +0200, Jan Beulich wrote: > On 29.05.2020 13:11, Hongyan Xia wrote: > > From: Wei Liu <wei.liu2@xxxxxxxxxx> > > > > After inspection ARM doesn't have alloc_xen_pagetable so this > > function > > is x86 only, which means it is safe for us to change. > > Well, it sits inside a "#ifndef CONFIG_ARM" section. > > > @@ -1442,29 +1443,42 @@ static __init void copy_mapping(unsigned > > long mfn, unsigned long end, > > unsigned long > > emfn)) > > { > > unsigned long next; > > + l3_pgentry_t *l3src = NULL, *l3dst = NULL; > > > > for ( ; mfn < end; mfn = next ) > > { > > l4_pgentry_t l4e = efi_l4_pgtable[l4_table_offset(mfn << > > PAGE_SHIFT)]; > > - l3_pgentry_t *l3src, *l3dst; > > unsigned long va = (unsigned long)mfn_to_virt(mfn); > > > > + if ( !((mfn << PAGE_SHIFT) & ((1UL << L4_PAGETABLE_SHIFT) > > - 1)) ) > > To be in line with ... > > > + { > > + UNMAP_DOMAIN_PAGE(l3src); > > + UNMAP_DOMAIN_PAGE(l3dst); > > + } > > next = mfn + (1UL << (L3_PAGETABLE_SHIFT - PAGE_SHIFT)); > > ... this, please avoid the left shift of mfn in the if(). Judgingfrom What do you mean by "in line" here? It does not look to me that "next =" can be easily squashed into the if() condition. Hongyan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |