[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH 20/22] arch/x86: use XSM hooks for get_pg_owner access checks
>>> On 13.09.12 at 15:55, Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> wrote: > On 09/13/2012 04:13 AM, Jan Beulich wrote: >>>>> On 12.09.12 at 17:59, Daniel De Graaf <dgdegra@xxxxxxxxxxxxx> wrote: >>> @@ -3353,9 +3357,14 @@ long do_mmu_update( >>> mfn = req.ptr >> PAGE_SHIFT; >>> gpfn = req.val; >>> >>> - rc = xsm_mmu_machphys_update(d, pg_owner, mfn); >>> - if ( rc ) >>> - break; >>> + xsm_needed |= XSM_MMU_MACHPHYS_UPDATE; >>> + if ( xsm_needed != xsm_checked ) >>> + { >>> + rc = xsm_mmu_update(d, pt_owner, pg_owner, xsm_needed); >> >> If you're already updating it this way, it would seem appropriate >> to remove the over-checking here: pt_owner is meaningless for >> this operation (there are no page tables involved), and hence >> you could/should pass d instead. > > While this is safe, it makes thinking about the arguments to the XSM hook > harder: the second argument would be defined as "pt_owner if called with > XSM_MMU_NORMAL_UPDATE set and either XSM_MMU_MACHPHYS_UPDATE unset or > XSM_MMU_MACHPHYS_UPDATE set in the previous call; otherwise, d." I would > prefer the simpler method of passing pt_owner every time, and only checking > it if XSM_MMU_NORMAL_UPDATE is set (which I now notice that the default > XSM hook does not do, although the FLASK hook does; I'll fix that). If that's a concern, then rather pass NULL here (and deal with it in the XSM code), indicating that there are no page tables being updated. Jan _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |