Olaf Hering
b9d38dfc8d
- remove xen.migrate.tools_notify_restore_to_hangup_during_migration_--abort_if_busy.patch It changed migration protocol and upstream wants a different solution - bnc#802221 - fix xenpaging readd xenpaging.qemu.flush-cache.patch - Upstream patches from Jan 26891-x86-S3-Fix-cpu-pool-scheduling-after-suspend-resume.patch 26930-x86-EFI-fix-runtime-call-status-for-compat-mode-Dom0.patch - Additional fix for bnc#816159 CVE-2013-1918-xsa45-followup.patch - bnc#817068 - Xen guest with >1 sr-iov vf won't start xen-managed-pci-device.patch - Update to Xen 4.2.2 c/s 26064 The following recent security patches are included in the tarball CVE-2013-0151-xsa34.patch (bnc#797285) CVE-2012-6075-xsa41.patch (bnc#797523) CVE-2013-1917-xsa44.patch (bnc#813673) CVE-2013-1919-xsa46.patch (bnc#813675) - Upstream patch from Jan 26902-x86-EFI-pass-boot-services-variable-info-to-runtime-code.patch - bnc#816159 - VUL-0: xen: CVE-2013-1918: XSA-45: Several long latency operations are not preemptible CVE-2013-1918-xsa45-1-vcpu-destroy-pagetables-preemptible.patch OBS-URL: https://build.opensuse.org/package/show/Virtualization/xen?expand=0&rev=237
37 lines
1.3 KiB
Diff
37 lines
1.3 KiB
Diff
Index: xen-4.2.1-testing/xen/arch/x86/domain.c
|
|
===================================================================
|
|
--- xen-4.2.1-testing.orig/xen/arch/x86/domain.c
|
|
+++ xen-4.2.1-testing/xen/arch/x86/domain.c
|
|
@@ -152,15 +152,30 @@ void dump_pageframe_info(struct domain *
|
|
|
|
printk("Memory pages belonging to domain %u:\n", d->domain_id);
|
|
|
|
- if ( d->tot_pages >= 10 )
|
|
+ if ( d->tot_pages >= 10 && d->is_dying < DOMDYING_dead )
|
|
{
|
|
printk(" DomPage list too long to display\n");
|
|
}
|
|
else
|
|
{
|
|
+ unsigned long total[PGT_type_mask
|
|
+ / (PGT_type_mask & -PGT_type_mask) + 1] = {};
|
|
+
|
|
spin_lock(&d->page_alloc_lock);
|
|
page_list_for_each ( page, &d->page_list )
|
|
{
|
|
+ unsigned int index = (page->u.inuse.type_info & PGT_type_mask)
|
|
+ / (PGT_type_mask & -PGT_type_mask);
|
|
+
|
|
+ if ( ++total[index] > 16 )
|
|
+ {
|
|
+ switch ( page->u.inuse.type_info & PGT_type_mask )
|
|
+ {
|
|
+ case PGT_none:
|
|
+ case PGT_writable_page:
|
|
+ continue;
|
|
+ }
|
|
+ }
|
|
printk(" DomPage %p: caf=%08lx, taf=%" PRtype_info "\n",
|
|
_p(page_to_mfn(page)),
|
|
page->count_info, page->u.inuse.type_info);
|