]> xenbits.xensource.com Git - xen.git/commitdiff
x86/PV: suppress unnecessary Dom0 construction output
authorJan Beulich <jbeulich@suse.com>
Wed, 18 Aug 2021 07:39:08 +0000 (09:39 +0200)
committerJan Beulich <jbeulich@suse.com>
Wed, 18 Aug 2021 07:39:08 +0000 (09:39 +0200)
v{xenstore,console}_{start,end} can only ever be zero in PV shim
configurations. Similarly reporting just zeros for an unmapped (or
absent) initrd is not useful. Particularly in case video is the only
output configured, space is scarce: Split the printk() and omit lines
carrying no information at all.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
xen/arch/x86/pv/dom0_build.c

index d5a1a6a4e2cf870cd8d5b053709b2d2fca1307aa..778c863ea46dc2ef70593e9158e7cd3063f00366 100644 (file)
@@ -575,25 +575,21 @@ int __init dom0_construct_pv(struct domain *d,
         printk("\n Init. ramdisk: %"PRIpaddr"->%"PRIpaddr,
                mpt_alloc, mpt_alloc + initrd_len);
     }
-    printk("\nVIRTUAL MEMORY ARRANGEMENT:\n"
-           " Loaded kernel: %p->%p\n"
-           " Init. ramdisk: %p->%p\n"
-           " Phys-Mach map: %p->%p\n"
-           " Start info:    %p->%p\n"
-           " Xenstore ring: %p->%p\n"
-           " Console ring:  %p->%p\n"
-           " Page tables:   %p->%p\n"
-           " Boot stack:    %p->%p\n"
-           " TOTAL:         %p->%p\n",
-           _p(vkern_start), _p(vkern_end),
-           _p(vinitrd_start), _p(vinitrd_end),
-           _p(vphysmap_start), _p(vphysmap_end),
-           _p(vstartinfo_start), _p(vstartinfo_end),
-           _p(vxenstore_start), _p(vxenstore_end),
-           _p(vconsole_start), _p(vconsole_end),
-           _p(vpt_start), _p(vpt_end),
-           _p(vstack_start), _p(vstack_end),
-           _p(v_start), _p(v_end));
+
+    printk("\nVIRTUAL MEMORY ARRANGEMENT:\n");
+    printk(" Loaded kernel: %p->%p\n", _p(vkern_start), _p(vkern_end));
+    if ( vinitrd_end > vinitrd_start )
+        printk(" Init. ramdisk: %p->%p\n", _p(vinitrd_start), _p(vinitrd_end));
+    printk(" Phys-Mach map: %p->%p\n", _p(vphysmap_start), _p(vphysmap_end));
+    printk(" Start info:    %p->%p\n", _p(vstartinfo_start), _p(vstartinfo_end));
+    if ( pv_shim )
+    {
+        printk(" Xenstore ring: %p->%p\n", _p(vxenstore_start), _p(vxenstore_end));
+        printk(" Console ring:  %p->%p\n", _p(vconsole_start), _p(vconsole_end));
+    }
+    printk(" Page tables:   %p->%p\n", _p(vpt_start), _p(vpt_end));
+    printk(" Boot stack:    %p->%p\n", _p(vstack_start), _p(vstack_end));
+    printk(" TOTAL:         %p->%p\n", _p(v_start), _p(v_end));
     printk(" ENTRY ADDRESS: %p\n", _p(parms.virt_entry));
 
     process_pending_softirqs();