[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V3 2/2] x86/mm: Make use of the default access param from xc_altp2m_create_view
On 29.11.2019 13:41, Jan Beulich wrote: > On 21.11.2019 16:02, Alexandru Stefan ISAILA wrote: >> Changes since V2: >> - Drop static from xenmem_access_to_p2m_access() and declare it >> in mem_access.h >> - Use xenmem_access_to_p2m_access() in p2m_init_next_altp2m() >> - Pull out the p2m specifics from p2m_init_altp2m_ept(). > > I guess this last point would better have been a prereq patch, > but anyway. Should I have a prereq patch for this in the next version? > >> @@ -2577,16 +2586,23 @@ int p2m_init_altp2m_by_id(struct domain *d, unsigned >> int idx) >> altp2m_list_lock(d); >> >> if ( d->arch.altp2m_eptp[idx] == mfn_x(INVALID_MFN) ) >> - rc = p2m_activate_altp2m(d, idx); >> + rc = p2m_activate_altp2m(d, idx, hostp2m->default_access); >> >> altp2m_list_unlock(d); >> return rc; >> } >> >> -int p2m_init_next_altp2m(struct domain *d, uint16_t *idx) >> +int p2m_init_next_altp2m(struct domain *d, uint16_t *idx, >> + uint16_t hvmmem_default_access) > > Does this new parameter really need to be a fixed width type, > rather than simply unsigned int (or even a suitable enum > type if there [hopefully] is one)? I think xenmem_access_t would be a good fit here. > >> { >> int rc = -EINVAL; >> unsigned int i; >> + p2m_access_t a; >> + struct p2m_domain *p2m; >> + >> + > > Two successive blank lines again. I will fix that. > >> @@ -2595,7 +2611,12 @@ int p2m_init_next_altp2m(struct domain *d, uint16_t >> *idx) >> if ( d->arch.altp2m_eptp[i] != mfn_x(INVALID_MFN) ) >> continue; >> >> - rc = p2m_activate_altp2m(d, i); >> + p2m = d->arch.altp2m_p2m[i]; >> + >> + if ( !xenmem_access_to_p2m_access(p2m, hvmmem_default_access, &a) ) >> + return -EINVAL; > > Returning with a lock still held? Thanks for spotting this, it definitely needs a free. Alex _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/mailman/listinfo/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |