[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v3 1/4] xen/arm/static-shmem: Static-shmem should be direct-mapped for direct-mapped domains
Hi Henry, On 20/05/2024 16:52, Henry Wang wrote: > Hi Michal, Luca, > > On 5/20/2024 7:24 PM, Michal Orzel wrote: >> Hi Henry, >> >> +CC: Luca >> >> On 17/05/2024 05:21, Henry Wang wrote: >>> To make things easier, add restriction that static shared memory >>> should also be direct-mapped for direct-mapped domains. Check the >>> host physical address to be matched with guest physical address when >>> parsing the device tree. Document this restriction in the doc. >> I'm ok with this restriction. >> >> @Luca, do you have any use case preventing us from making this restriction? >> >> This patch clashes with Luca series so depending on which goes first, > > I agree that there will be some conflicts between the two series. To > avoid back and forth, if Luca's series goes in first, would it be ok for > you if I place the same check from this patch in > handle_shared_mem_bank() like below? > > diff --git a/xen/arch/arm/static-shmem.c b/xen/arch/arm/static-shmem.c > index 9c3a83042d..2d23fa4917 100644 > --- a/xen/arch/arm/static-shmem.c > +++ b/xen/arch/arm/static-shmem.c > @@ -219,6 +219,13 @@ static int __init handle_shared_mem_bank(struct > domain *d, paddr_t gbase, > pbase = shm_bank->start; > psize = shm_bank->size; > > + if ( is_domain_direct_mapped(d) && (pbase != gbase) ) > + { > + printk("%pd: physical address 0x%"PRIpaddr" and guest address > 0x%"PRIpaddr" are not direct-mapped.\n", > + d, pbase, gbase); > + return -EINVAL; > + } > + > printk("%pd: SHMEM map from %s: mphys 0x%"PRIpaddr" -> gphys > 0x%"PRIpaddr", size 0x%"PRIpaddr"\n", > d, bank_from_heap ? "Xen heap" : "Host", pbase, gbase, psize); > >> Acked-by: Michal Orzel <michal.orzel@xxxxxxx> > > Thanks. I will take the tag if you are ok with above diff (for the case > if this series goes in later than Luca's). I would move this check to process_shm() right after "gbase = dt_read_paddr" setting. This would be the most natural placement for such a check. ~Michal
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |