|
|
|
|
|
|
|
|
|
|
xen-changelog
[Xen-changelog] [xen-unstable] [XEN] Shadow: ignore shadow operations on
# HG changeset patch
# User Tim Deegan <Tim.Deegan@xxxxxxxxxxxxx>
# Date 1173193340 0
# Node ID af6293fd313490d02ffc11a53f211d1c454a8b05
# Parent 200d13363a38cb84ab1a75aca6d0a31f9390ecaa
[XEN] Shadow: ignore shadow operations on dying domains
so that they don't get confused by the way that shadow_teardown()
leaves some of the mode bits set after releasing the shadow resources.
Signed-off-by: Tim Deegan <Tim.Deegan@xxxxxxxxxxxxx>
---
xen/arch/x86/mm/shadow/common.c | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletion(-)
diff -r 200d13363a38 -r af6293fd3134 xen/arch/x86/mm/shadow/common.c
--- a/xen/arch/x86/mm/shadow/common.c Tue Mar 06 13:41:05 2007 +0000
+++ b/xen/arch/x86/mm/shadow/common.c Tue Mar 06 15:02:20 2007 +0000
@@ -2977,8 +2977,16 @@ int shadow_domctl(struct domain *d,
if ( unlikely(d == current->domain) )
{
- gdprintk(XENLOG_INFO, "Don't try to do a shadow op on yourself!\n");
+ gdprintk(XENLOG_INFO, "Dom %u tried to do a shadow op on itself.\n",
+ d->domain_id);
return -EINVAL;
+ }
+
+ if ( unlikely(test_bit(_DOMF_dying, &d->domain_flags)) )
+ {
+ gdprintk(XENLOG_INFO, "Ignoring shadow op on dying domain %u\n",
+ d->domain_id);
+ return 0;
}
switch ( sc->op )
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|
<Prev in Thread] |
Current Thread |
[Next in Thread> |
- [Xen-changelog] [xen-unstable] [XEN] Shadow: ignore shadow operations on dying domains,
Xen patchbot-unstable <=
|
|
|
|
|