[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] [PATCH V4 4/5] xen, libxc: Request page fault injection via libxc
On 09/08/14 18:47, Jan Beulich wrote: >>>> On 05.09.14 at 12:01, <rcojocaru@xxxxxxxxxxxxxxx> wrote: >> + { >> + hvm_inject_trap(&d->arch.hvm_domain.inject_trap); >> + d->arch.hvm_domain.inject_trap.vector = -1; >> + } > > And this is clearly lacking serialization (or a comment saying why > serialization isn't needed here). If I understood this correctly, this is what Kevin has recommended: that only one HVMOP_trap_request should be pending at a time. Or have I misunderstood your comment? >> --- a/xen/include/public/hvm/hvm_op.h >> +++ b/xen/include/public/hvm/hvm_op.h >> @@ -197,6 +197,13 @@ struct xen_hvm_inject_trap { >> uint32_t insn_len; >> /* CR2 for page faults */ >> uint64_aligned_t cr2; >> + /* >> + * Only used if vcpuid == ~0 (wildcard for any VCPU). >> + * In that case, injection data is set per-domain, and any VCPU >> + * running a process with matching CR3 in user mode will inject >> + * the trap. >> + */ >> + uint64_aligned_t cr3; > > The comment should say "Currently only used ...", and the code > should then check this (returning the usual -EOPNOTSUPP). Or > alternatively implement it right away (which may be the better > route taking into consideration the first of the comments above). I will gladly change the comment, but I'm not sure for what CR3 value I should return -EOPNOTSUPP. Should I enforce that cr3 == 0 for the VCPU-specific case and for traps that are not page faults? Could you please elaborate on what the alternative is? Thanks, Razvan Cojocaru _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |