22 lines
716 B
Plaintext
22 lines
716 B
Plaintext
$NetBSD: patch-CVE-2013-1918_10,v 1.1 2013/05/03 16:48:37 drochner Exp $
|
|
|
|
--- xen/arch/x86/traps.c.orig 2013-04-23 16:44:20.000000000 +0000
|
|
+++ xen/arch/x86/traps.c
|
|
@@ -2317,8 +2317,15 @@ static int emulate_privileged_op(struct
|
|
rc = new_guest_cr3(gmfn_to_mfn(v->domain, compat_cr3_to_pfn(*reg)));
|
|
#endif
|
|
domain_unlock(v->domain);
|
|
- if ( rc == 0 ) /* not okay */
|
|
+ switch ( rc )
|
|
+ {
|
|
+ case 0:
|
|
+ break;
|
|
+ case -EAGAIN: /* retry after preemption */
|
|
+ goto skip;
|
|
+ default: /* not okay */
|
|
goto fail;
|
|
+ }
|
|
break;
|
|
|
|
case 4: /* Write CR4 */
|