|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH 07/10] x86/shadow: the guess_wrmap() hook is needed for HVM only
At 15:06 +0200 on 20 Apr (1587395210), Jan Beulich wrote:
> On 18.04.2020 11:03, Tim Deegan wrote:
> > At 16:28 +0200 on 17 Apr (1587140897), Jan Beulich wrote:
> >> sh_remove_write_access() bails early for !external guests, and hence its
> >> building and thus the need for the hook can be suppressed altogether in
> >> !HVM configs.
> >>
> >> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
> >
> >> @@ -366,6 +367,14 @@ int sh_validate_guest_entry(struct vcpu
> >> extern int sh_remove_write_access(struct domain *d, mfn_t readonly_mfn,
> >> unsigned int level,
> >> unsigned long fault_addr);
> >> +#else
> >> +static inline int sh_remove_write_access(struct domain *d, mfn_t
> >> readonly_mfn,
> >> + unsigned int level,
> >> + unsigned long fault_addr)
> >> +{
> >
> > Can we have an ASSERT(!shadow_mode_refcounts(d)) here, please,
> > matching the check that would have made it a noop before?
>
> I've added one, but I find this quite odd in a !HVM build, where
>
> #define PG_refcounts 0
>
> and
>
> #define paging_mode_refcounts(_d) (!!((_d)->arch.paging.mode & PG_refcounts))
>
> Perhaps you're wanting this mainly for documentation purposes?
Yeah, that and future-proofing. If !HVM builds ever start using
paging_mode_refcounts then this assertion will forcibly remind us that
we need changes here. I'm glad that it compiles away to nothing in
the meantime.
Cheers,
Tim.
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |