[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] Tools: Add libxc wrapper for p2m audit domctl
# HG changeset patch # User Andres Lagar-Cavilla <andres@xxxxxxxxxxxxxxxx> # Date 1322751403 0 # Node ID ff752070bd330ed94d19aa4b0a5382af9a1e336e # Parent 284ae13b2e545b83e5d5a8f5bfd239582595c9c5 Tools: Add libxc wrapper for p2m audit domctl Signed-off-by: Andres Lagar-Cavilla <andres@xxxxxxxxxxxxxxxx> Acked-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx> Committed-by: Tim Deegan <tim@xxxxxxx> --- diff -r 284ae13b2e54 -r ff752070bd33 tools/libxc/xc_domain.c --- a/tools/libxc/xc_domain.c Thu Dec 01 14:56:42 2011 +0000 +++ b/tools/libxc/xc_domain.c Thu Dec 01 14:56:43 2011 +0000 @@ -1472,6 +1472,28 @@ return do_domctl(xc, &domctl); } +int xc_domain_p2m_audit(xc_interface *xch, + uint32_t domid, + uint64_t *orphans_debug, + uint64_t *orphans_invalid, + uint64_t *m2p_bad, + uint64_t *p2m_bad) +{ + DECLARE_DOMCTL; + int rc; + + domctl.cmd = XEN_DOMCTL_audit_p2m; + domctl.domain = domid; + rc = do_domctl(xch, &domctl); + + *orphans_debug = domctl.u.audit_p2m.orphans_debug; + *orphans_invalid = domctl.u.audit_p2m.orphans_invalid; + *m2p_bad = domctl.u.audit_p2m.m2p_bad; + *p2m_bad = domctl.u.audit_p2m.p2m_bad; + + return rc; +} + int xc_domain_set_access_required(xc_interface *xch, uint32_t domid, unsigned int required) diff -r 284ae13b2e54 -r ff752070bd33 tools/libxc/xenctrl.h --- a/tools/libxc/xenctrl.h Thu Dec 01 14:56:42 2011 +0000 +++ b/tools/libxc/xenctrl.h Thu Dec 01 14:56:43 2011 +0000 @@ -712,6 +712,33 @@ unsigned int enable); /** + * This function audits the (top level) p2m of a domain + * and returns the different error counts, if any. + * + * @parm xch a handle to an open hypervisor interface + * @parm domid the domain id whose top level p2m we + * want to audit + * @parm orphans_debug count of m2p entries for valid + * domain pages containing a debug value + * @parm orphans_invalid count of m2p entries for valid + * domain pages containing an invalid value + * @parm m2p_bad count of m2p entries mismatching the + * associated p2m entry for this domain + * @parm p2m_bad count of p2m entries for this domain + * mismatching the associated m2p entry + * return 0 on success, -1 on failure + * errno values on failure include: + * -ENOSYS: not implemented + * -EFAULT: could not copy results back to guest + */ +int xc_domain_p2m_audit(xc_interface *xch, + uint32_t domid, + uint64_t *orphans_debug, + uint64_t *orphans_invalid, + uint64_t *m2p_bad, + uint64_t *p2m_bad); + +/** * This function sets or clears the requirement that an access memory * event listener is required on the domain. * _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |