xcp-1.6-updates/xen-4.1.hg

changeset 23319:ff523faf2be1

x86/mm: fix mod_l1_entry() return value when encountering r/o MMIO page

While putting together the workaround announced in
http://lists.xen.org/archives/html/xen-devel/2012-06/msg00709.html, I
found that mod_l1_entry(), upon encountering a set bit in
mmio_ro_ranges, would return 1 instead of 0 (the removal of the write
permission is supposed to be entirely transparent to the caller, even
more so to the calling guest).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
xen-unstable changeset: 25487:baa85434d0ec
xen-unstable date: Thu Jun 21 11:30:59 2012 +0200
author Jan Beulich <jbeulich@novell.com>
date Mon Jul 09 10:30:16 2012 +0100 (2012-07-09)
parents 1d437f7fb15d
children 3ce155e77f39
files xen/arch/x86/mm.c
line diff
     1.1 --- a/xen/arch/x86/mm.c	Mon Jul 09 10:28:50 2012 +0100
     1.2 +++ b/xen/arch/x86/mm.c	Mon Jul 09 10:30:16 2012 +0100
     1.3 @@ -1801,6 +1801,7 @@ static int mod_l1_entry(l1_pgentry_t *pl
     1.4              return 0;
     1.5          case -1:
     1.6              l1e_remove_flags(nl1e, _PAGE_RW);
     1.7 +            rc = 0;
     1.8              break;
     1.9          }
    1.10