diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2009-05-20 15:42:14 +0100 |
---|---|---|
committer | Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> | 2010-10-20 16:22:33 -0700 |
commit | f020e2905166e12f9a8f109fe968cb5a9db887e9 (patch) | |
tree | de519deb292f099369dc81e65401227016139a94 /lib/kernel_lock.c | |
parent | 8e3e99918b9ccd6bc2369ddbcd74056f8796e1e0 (diff) | |
download | kernel_goldelico_gta04-f020e2905166e12f9a8f109fe968cb5a9db887e9.zip kernel_goldelico_gta04-f020e2905166e12f9a8f109fe968cb5a9db887e9.tar.gz kernel_goldelico_gta04-f020e2905166e12f9a8f109fe968cb5a9db887e9.tar.bz2 |
privcmd: MMAPBATCH: Fix error handling/reporting
On error IOCTL_PRIVCMD_MMAPBATCH is expected to set the top nibble of
the effected MFN and return 0. Currently it leaves the MFN unmodified
and returns the number of failures. Therefore:
- reimplement remap_domain_mfn_range() using direct
HYPERVISOR_mmu_update() calls and small batches. The xen_set_domain_pte()
interface does not report errors and since some failures are
expected/normal using the multicall infrastructure is too noisy.
- return 0 as expected
- writeback the updated MFN list to mmapbatch->arr not over mmapbatch,
smashing the caller's stack.
- remap_domain_mfn_range can be static.
With this change I am able to start an HVM domain.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Diffstat (limited to 'lib/kernel_lock.c')
0 files changed, 0 insertions, 0 deletions