diff options
author | Andres Lagar-Cavilla <andres@lagarcavilla.org> | 2012-02-10 16:07:07 +0000 |
---|---|---|
committer | Andres Lagar-Cavilla <andres@lagarcavilla.org> | 2012-02-10 16:07:07 +0000 |
commit | c13b827e66a93b121b48bd1fa6db1a11e77031c9 (patch) | |
tree | cee5e3f3edfb171d07544b8ea5a7a16f6604d7d4 /xen/arch/x86/x86_64/mm.c | |
parent | 59a36d66a5d50a66f8a629b334a0cbd7af360f80 (diff) | |
download | xen-c13b827e66a93b121b48bd1fa6db1a11e77031c9.tar.gz xen-c13b827e66a93b121b48bd1fa6db1a11e77031c9.tar.bz2 xen-c13b827e66a93b121b48bd1fa6db1a11e77031c9.zip |
x86/mm: New sharing audit memop
Remove costly mem_sharing audits from the inline path, and instead make them
callable as a memop.
Have the audit function return the number of errors detected.
Update memshrtool to be able to trigger audits.
Set sharing audits as enabled by default.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Adin Scannell <adin@scannell.ca>
Acked-by: Tim Deegan <tim@xen.org>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'xen/arch/x86/x86_64/mm.c')
-rw-r--r-- | xen/arch/x86/x86_64/mm.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c index 6121701db1..59cd00822b 100644 --- a/xen/arch/x86/x86_64/mm.c +++ b/xen/arch/x86/x86_64/mm.c @@ -1117,6 +1117,8 @@ long subarch_memory_op(int op, XEN_GUEST_HANDLE(void) arg) xen_mem_sharing_op_t mso; if ( copy_from_guest(&mso, arg, 1) ) return -EFAULT; + if ( mso.op == XENMEM_sharing_op_audit ) + return mem_sharing_audit(); rc = do_mem_event_op(op, mso.domain, (void *) &mso); if ( !rc && copy_to_guest(arg, &mso, 1) ) return -EFAULT; |