[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen master] x86/shadow: ignore sh_pin() failure in one more case
commit 51fc3633dfe50d0e04f438dbcd19e55beab9b9a7 Author: Jan Beulich <jbeulich@xxxxxxxx> AuthorDate: Wed Dec 20 10:05:16 2017 +0100 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Wed Dec 20 10:05:16 2017 +0100 x86/shadow: ignore sh_pin() failure in one more case Following what we've already done in the XSA-250 fix, convert another sh_pin() caller to no longer fail the higher level operation if pinning fails, as pinning is a performance optimization only in those places. Suggested-by: Tim Deegan <tim@xxxxxxx> Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx> Reviewed-by: Tim Deegan <tim@xxxxxxx> --- xen/arch/x86/mm/shadow/multi.c | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/xen/arch/x86/mm/shadow/multi.c b/xen/arch/x86/mm/shadow/multi.c index f7182e4..c4e954e 100644 --- a/xen/arch/x86/mm/shadow/multi.c +++ b/xen/arch/x86/mm/shadow/multi.c @@ -3952,17 +3952,15 @@ sh_set_toplevel_shadow(struct vcpu *v, } ASSERT(mfn_valid(smfn)); - /* Pin the shadow and put it (back) on the list of pinned shadows */ - if ( sh_pin(d, smfn) == 0 ) - { - SHADOW_ERROR("can't pin %#lx as toplevel shadow\n", mfn_x(smfn)); - domain_crash(d); - } - /* Take a ref to this page: it will be released in sh_detach_old_tables() * or the next call to set_toplevel_shadow() */ if ( sh_get_ref(d, smfn, 0) ) + { + /* Pin the shadow and put it (back) on the list of pinned shadows */ + sh_pin(d, smfn); + new_entry = pagetable_from_mfn(smfn); + } else { SHADOW_ERROR("can't install %#lx as toplevel shadow\n", mfn_x(smfn)); -- generated by git-patchbot for /home/xen/git/xen.git#master _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxxx https://lists.xenproject.org/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |