From: Keir Fraser <keir.xen@gmail.com>
To: George Dunlap <george.dunlap@eu.citrix.com>,
Andrew Cooper <andrew.cooper3@citrix.com>,
Xen-devel <xen-devel@lists.xen.org>
Cc: Stefano Stabellini <stefano.stabellini@citrix.com>,
Keir Fraser <keir@xen.org>,
Ian Campbell <ian.campbell@citrix.com>,
Jan Beulich <JBeulich@suse.com>, Tim Deegan <tim@xen.org>
Subject: Re: [PATCH] xen/panic: Fix string inconsistencies in callers of panic()
Date: Tue, 03 Dec 2013 09:21:23 +0000 [thread overview]
Message-ID: <CEC35313.6876D%keir.xen@gmail.com> (raw)
In-Reply-To: <52932C6B.3090800@eu.citrix.com>
On 25/11/2013 10:54, "George Dunlap" <george.dunlap@eu.citrix.com> wrote:
> On 11/25/2013 10:06 AM, Andrew Cooper wrote:
>> panic() (as well as early_panic() in arm) is inconsistently called with or
>> without a trailing newline. This results in cases where the lower line of
>> *****s is not on its own line.
>>
>> Change panic() to always print a newline itself, and update callers not to.
>>
>> In addition, panic() was occasionally called with a leading newline, and
>> occaionally with trailing punctuation which seems rather redundant given the
>> surrounding context. Fix up these sitiuations as well.
>>
>> Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
>
> Assuming that it does what it says on the tin (only changes strings):
>
> Release-acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
>> CC: Keir Fraser <keir@xen.org>
>> CC: Jan Beulich <JBeulich@suse.com>
>> CC: Ian Campbell <ian.campbell@citrix.com>
>> CC: Stefano Stabellini <stefano.stabellini@citrix.com>
>> CC: Tim Deegan <tim@xen.org>
>> CC: George Dunlap <george.dunlap@eu.citrix.com>
>>
>> ---
>>
>> This has been compile tested on arm32 and arm64.
>>
>> George:
>> I request that this is included for 4.4 - It is just formatting changes
>> rather
>> than functional ones
>> ---
>> xen/arch/arm/arm32/vfp.c | 2 +-
>> xen/arch/arm/arm64/traps.c | 2 +-
>> xen/arch/arm/domain_build.c | 18 +++++++++---------
>> xen/arch/arm/early_printk.c | 2 +-
>> xen/arch/arm/gic.c | 16 ++++++++--------
>> xen/arch/arm/kernel.c | 8 ++++----
>> xen/arch/arm/mm.c | 2 +-
>> xen/arch/arm/platform.c | 2 +-
>> xen/arch/arm/setup.c | 10 +++++-----
>> xen/arch/arm/smpboot.c | 2 +-
>> xen/arch/arm/time.c | 8 ++++----
>> xen/arch/arm/traps.c | 10 +++++-----
>> xen/arch/x86/apic.c | 4 ++--
>> xen/arch/x86/bzimage.c | 2 +-
>> xen/arch/x86/cpu/amd.c | 2 +-
>> xen/arch/x86/cpu/mcheck/mce.c | 4 ++--
>> xen/arch/x86/domain_build.c | 20 ++++++++++----------
>> xen/arch/x86/hvm/svm/intr.c | 2 +-
>> xen/arch/x86/io_apic.c | 4 ++--
>> xen/arch/x86/mm/mm-locks.h | 2 +-
>> xen/arch/x86/mpparse.c | 10 +++++-----
>> xen/arch/x86/setup.c | 6 +++---
>> xen/arch/x86/smpboot.c | 2 +-
>> xen/arch/x86/tboot.c | 2 +-
>> xen/arch/x86/time.c | 2 +-
>> xen/arch/x86/traps.c | 14 +++++++-------
>> xen/arch/x86/x86_64/mm.c | 2 +-
>> xen/arch/x86/x86_64/traps.c | 2 +-
>> xen/common/page_alloc.c | 2 +-
>> xen/common/schedule.c | 2 +-
>> xen/drivers/char/console.c | 4 ++--
>> xen/drivers/passthrough/iommu.c | 2 +-
>> xen/drivers/passthrough/pci.c | 2 +-
>> xen/drivers/passthrough/vtd/dmar.h | 2 +-
>> xen/drivers/passthrough/vtd/iommu.c | 4 ++--
>> xen/drivers/passthrough/vtd/qinval.c | 2 +-
>> xen/xsm/flask/hooks.c | 2 +-
>> 37 files changed, 92 insertions(+), 92 deletions(-)
>>
>> diff --git a/xen/arch/arm/arm32/vfp.c b/xen/arch/arm/arm32/vfp.c
>> index 0069acd..5b80053 100644
>> --- a/xen/arch/arm/arm32/vfp.c
>> +++ b/xen/arch/arm/arm32/vfp.c
>> @@ -80,7 +80,7 @@ static __init int vfp_init(void)
>>
>> vfparch = (vfpsid & FPSID_ARCH_MASK) >> FPSID_ARCH_BIT;
>> if ( vfparch < 2 )
>> - panic("Xen only support VFP 3\n");
>> + panic("Xen only support VFP 3");
>>
>> return 0;
>> }
>> diff --git a/xen/arch/arm/arm64/traps.c b/xen/arch/arm/arm64/traps.c
>> index d778f89..1693b5d 100644
>> --- a/xen/arch/arm/arm64/traps.c
>> +++ b/xen/arch/arm/arm64/traps.c
>> @@ -26,7 +26,7 @@
>>
>> asmlinkage void do_trap_serror(struct cpu_user_regs *regs)
>> {
>> - panic("Unhandled serror trap\n");
>> + panic("Unhandled serror trap");
>> }
>>
>> static const char *handler[]= {
>> diff --git a/xen/arch/arm/domain_build.c b/xen/arch/arm/domain_build.c
>> index e9bb01f..0cce676 100644
>> --- a/xen/arch/arm/domain_build.c
>> +++ b/xen/arch/arm/domain_build.c
>> @@ -81,7 +81,7 @@ static void allocate_memory_11(struct domain *d, struct
>> kernel_info *kinfo)
>> }
>>
>> if ( !pg )
>> - panic("Failed to allocate contiguous memory for dom0\n");
>> + panic("Failed to allocate contiguous memory for dom0");
>>
>> spfn = page_to_mfn(pg);
>> start = spfn << PAGE_SHIFT;
>> @@ -93,7 +93,7 @@ static void allocate_memory_11(struct domain *d, struct
>> kernel_info *kinfo)
>> res = guest_physmap_add_page(d, spfn, spfn, order);
>>
>> if ( res )
>> - panic("Unable to add pages in DOM0: %d\n", res);
>> + panic("Unable to add pages in DOM0: %d", res);
>>
>> kinfo->mem.bank[0].start = start;
>> kinfo->mem.bank[0].size = size;
>> @@ -123,7 +123,7 @@ static void allocate_memory(struct domain *d, struct
>> kernel_info *kinfo)
>>
>> reg = dt_get_property(memory, "reg", ®_len);
>> if ( reg == NULL )
>> - panic("Memory node has no reg property!\n");
>> + panic("Memory node has no reg property");
>>
>> for ( l = 0;
>> kinfo->unassigned_mem > 0 && l + reg_size <= reg_len
>> @@ -133,7 +133,7 @@ static void allocate_memory(struct domain *d, struct
>> kernel_info *kinfo)
>> paddr_t start, size;
>>
>> if ( dt_device_get_address(memory, bank, &start, &size) )
>> - panic("Unable to retrieve the bank %u for %s\n",
>> + panic("Unable to retrieve the bank %u for %s",
>> bank, dt_node_full_name(memory));
>>
>> if ( size > kinfo->unassigned_mem )
>> @@ -142,7 +142,7 @@ static void allocate_memory(struct domain *d, struct
>> kernel_info *kinfo)
>> printk("Populate P2M %#"PRIx64"->%#"PRIx64"\n",
>> start, start + size);
>> if ( p2m_populate_ram(d, start, start + size) < 0 )
>> - panic("Failed to populate P2M\n");
>> + panic("Failed to populate P2M");
>> kinfo->mem.bank[kinfo->mem.nr_banks].start = start;
>> kinfo->mem.bank[kinfo->mem.nr_banks].size = size;
>> kinfo->mem.nr_banks++;
>> @@ -908,7 +908,7 @@ static void dtb_load(struct kernel_info *kinfo)
>>
>> rc = raw_copy_to_guest(dtb_virt, kinfo->fdt,
>> fdt_totalsize(kinfo->fdt));
>> if ( rc != 0 )
>> - panic("Unable to copy the DTB to dom0 memory (rc = %lu)\n", rc);
>> + panic("Unable to copy the DTB to dom0 memory (rc = %lu)", rc);
>> xfree(kinfo->fdt);
>> }
>>
>> @@ -935,12 +935,12 @@ static void initrd_load(struct kernel_info *kinfo)
>> res = fdt_setprop_inplace_cell(kinfo->fdt, node, "linux,initrd-start",
>> load_addr);
>> if ( res )
>> - panic("Cannot fix up \"linux,initrd-start\" property\n");
>> + panic("Cannot fix up \"linux,initrd-start\" property");
>>
>> res = fdt_setprop_inplace_cell(kinfo->fdt, node, "linux,initrd-end",
>> load_addr + len);
>> if ( res )
>> - panic("Cannot fix up \"linux,initrd-end\" property\n");
>> + panic("Cannot fix up \"linux,initrd-end\" property");
>>
>> for ( offs = 0; offs < len; )
>> {
>> @@ -954,7 +954,7 @@ static void initrd_load(struct kernel_info *kinfo)
>> rc = gvirt_to_maddr(load_addr + offs, &ma);
>> if ( rc )
>> {
>> - panic("\nUnable to translate guest address\n");
>> + panic("Unable to translate guest address");
>> return;
>> }
>>
>> diff --git a/xen/arch/arm/early_printk.c b/xen/arch/arm/early_printk.c
>> index 058d044..41938bb 100644
>> --- a/xen/arch/arm/early_printk.c
>> +++ b/xen/arch/arm/early_printk.c
>> @@ -61,7 +61,7 @@ early_panic(const char *fmt, ...)
>> early_vprintk(fmt, args);
>> va_end(args);
>>
>> - early_printk("\nEarly Panic: Stopping\n");
>> + early_printk("\n\nEarly Panic: Stopping\n");
>>
>> while(1);
>> }
>> diff --git a/xen/arch/arm/gic.c b/xen/arch/arm/gic.c
>> index ab49106..485c793 100644
>> --- a/xen/arch/arm/gic.c
>> +++ b/xen/arch/arm/gic.c
>> @@ -398,29 +398,29 @@ void __init gic_init(void)
>>
>> node = dt_find_interrupt_controller(gic_ids);
>> if ( !node )
>> - panic("Unable to find compatible GIC in the device tree\n");
>> + panic("Unable to find compatible GIC in the device tree");
>>
>> dt_device_set_used_by(node, DOMID_XEN);
>>
>> res = dt_device_get_address(node, 0, &gic.dbase, NULL);
>> if ( res || !gic.dbase || (gic.dbase & ~PAGE_MASK) )
>> - panic("GIC: Cannot find a valid address for the distributor\n");
>> + panic("GIC: Cannot find a valid address for the distributor");
>>
>> res = dt_device_get_address(node, 1, &gic.cbase, NULL);
>> if ( res || !gic.cbase || (gic.cbase & ~PAGE_MASK) )
>> - panic("GIC: Cannot find a valid address for the CPU\n");
>> + panic("GIC: Cannot find a valid address for the CPU");
>>
>> res = dt_device_get_address(node, 2, &gic.hbase, NULL);
>> if ( res || !gic.hbase || (gic.hbase & ~PAGE_MASK) )
>> - panic("GIC: Cannot find a valid address for the hypervisor\n");
>> + panic("GIC: Cannot find a valid address for the hypervisor");
>>
>> res = dt_device_get_address(node, 3, &gic.vbase, NULL);
>> if ( res || !gic.vbase || (gic.vbase & ~PAGE_MASK) )
>> - panic("GIC: Cannot find a valid address for the virtual CPU\n");
>> + panic("GIC: Cannot find a valid address for the virtual CPU");
>>
>> res = dt_device_get_irq(node, 0, &gic.maintenance);
>> if ( res )
>> - panic("GIC: Cannot find the maintenance IRQ\n");
>> + panic("GIC: Cannot find the maintenance IRQ");
>>
>> /* Set the GIC as the primary interrupt controller */
>> dt_interrupt_controller = node;
>> @@ -438,7 +438,7 @@ void __init gic_init(void)
>>
>> if ( (gic.dbase & ~PAGE_MASK) || (gic.cbase & ~PAGE_MASK) ||
>> (gic.hbase & ~PAGE_MASK) || (gic.vbase & ~PAGE_MASK) )
>> - panic("GIC interfaces not page aligned.\n");
>> + panic("GIC interfaces not page aligned");
>>
>> set_fixmap(FIXMAP_GICD, gic.dbase >> PAGE_SHIFT, DEV_SHARED);
>> BUILD_BUG_ON(FIXMAP_ADDR(FIXMAP_GICC1) !=
>> @@ -783,7 +783,7 @@ static void do_sgi(struct cpu_user_regs *regs, int
>> othercpu, enum gic_sgi sgi)
>> smp_call_function_interrupt();
>> break;
>> default:
>> - panic("Unhandled SGI %d on CPU%d\n", sgi, smp_processor_id());
>> + panic("Unhandled SGI %d on CPU%d", sgi, smp_processor_id());
>> break;
>> }
>>
>> diff --git a/xen/arch/arm/kernel.c b/xen/arch/arm/kernel.c
>> index 9c1c1ad..6a5772b 100644
>> --- a/xen/arch/arm/kernel.c
>> +++ b/xen/arch/arm/kernel.c
>> @@ -87,7 +87,7 @@ static void place_modules(struct kernel_info *info,
>> paddr_t addr;
>>
>> if ( total + kernel_size > mem_size )
>> - panic("Not enough memory in the first bank for the dtb+initrd.");
>> + panic("Not enough memory in the first bank for the dtb+initrd");
>>
>> /*
>> * DTB must be loaded such that it does not conflict with the
>> @@ -112,7 +112,7 @@ static void place_modules(struct kernel_info *info,
>> addr = kernel_start - total;
>> else
>> {
>> - panic("Unable to find suitable location for dtb+initrd.");
>> + panic("Unable to find suitable location for dtb+initrd");
>> return;
>> }
>>
>> @@ -144,7 +144,7 @@ static void kernel_zimage_load(struct kernel_info *info)
>> rc = gvirt_to_maddr(load_addr + offs, &ma);
>> if ( rc )
>> {
>> - panic("\nUnable to map translate guest address\n");
>> + panic("Unable to map translate guest address");
>> return;
>> }
>>
>> @@ -314,7 +314,7 @@ static int kernel_try_elf_prepare(struct kernel_info
>> *info,
>> info->kernel_order = get_order_from_bytes(size);
>> info->kernel_img = alloc_xenheap_pages(info->kernel_order, 0);
>> if ( info->kernel_img == NULL )
>> - panic("Cannot allocate temporary buffer for kernel.\n");
>> + panic("Cannot allocate temporary buffer for kernel");
>>
>> copy_from_paddr(info->kernel_img, addr, size, info->load_attr);
>>
>> diff --git a/xen/arch/arm/mm.c b/xen/arch/arm/mm.c
>> index 2de7dc7..acf037b 100644
>> --- a/xen/arch/arm/mm.c
>> +++ b/xen/arch/arm/mm.c
>> @@ -633,7 +633,7 @@ void __init setup_xenheap_mappings(unsigned long
>> base_mfn,
>> xenheap_mfn_start = base_mfn;
>>
>> if ( base_mfn < xenheap_mfn_start )
>> - early_panic("cannot add xenheap mapping at %lx below heap start
>> %lx\n",
>> + early_panic("cannot add xenheap mapping at %lx below heap start
>> %lx",
>> base_mfn, xenheap_mfn_start);
>>
>> end_mfn = base_mfn + nr_mfns;
>> diff --git a/xen/arch/arm/platform.c b/xen/arch/arm/platform.c
>> index 0fbbdc7..58b8bd2 100644
>> --- a/xen/arch/arm/platform.c
>> +++ b/xen/arch/arm/platform.c
>> @@ -83,7 +83,7 @@ void __init platform_init(void)
>> res = platform->init();
>>
>> if ( res )
>> - panic("Unable to initialize the platform\n");
>> + panic("Unable to initialize the platform");
>> }
>>
>> int __init platform_init_time(void)
>> diff --git a/xen/arch/arm/setup.c b/xen/arch/arm/setup.c
>> index b032030..325f148 100644
>> --- a/xen/arch/arm/setup.c
>> +++ b/xen/arch/arm/setup.c
>> @@ -345,7 +345,7 @@ static paddr_t __init get_xen_paddr(void)
>> }
>>
>> if ( !paddr )
>> - early_panic("Not enough memory to relocate Xen\n");
>> + early_panic("Not enough memory to relocate Xen");
>>
>> early_printk("Placing Xen at 0x%"PRIpaddr"-0x%"PRIpaddr"\n",
>> paddr, paddr + min_size);
>> @@ -372,7 +372,7 @@ static void __init setup_mm(unsigned long dtb_paddr,
>> size_t dtb_size)
>>
>> /* TODO: Handle non-contiguous memory bank */
>> if ( !early_info.mem.nr_banks )
>> - early_panic("No memory bank\n");
>> + early_panic("No memory bank");
>> ram_start = early_info.mem.bank[0].start;
>> ram_size = early_info.mem.bank[0].size;
>> ram_end = ram_start + ram_size;
>> @@ -417,7 +417,7 @@ static void __init setup_mm(unsigned long dtb_paddr,
>> size_t dtb_size)
>> } while ( xenheap_pages > 128<<(20-PAGE_SHIFT) );
>>
>> if ( ! e )
>> - early_panic("Not not enough space for xenheap\n");
>> + early_panic("Not not enough space for xenheap");
>>
>> domheap_pages = heap_pages - xenheap_pages;
>>
>> @@ -695,13 +695,13 @@ void __init start_xen(unsigned long boot_phys_offset,
>> /* Create initial domain 0. */
>> dom0 = domain_create(0, 0, 0);
>> if ( IS_ERR(dom0) || (alloc_dom0_vcpu0() == NULL) )
>> - panic("Error creating domain 0\n");
>> + panic("Error creating domain 0");
>>
>> dom0->is_privileged = 1;
>> dom0->target = NULL;
>>
>> if ( construct_dom0(dom0) != 0)
>> - panic("Could not set up DOM0 guest OS\n");
>> + panic("Could not set up DOM0 guest OS");
>>
>> /* Scrub RAM that is still free and so may go to an unprivileged
>> domain.
>> XXX too slow in simulator
>> diff --git a/xen/arch/arm/smpboot.c b/xen/arch/arm/smpboot.c
>> index 6c90fa6..6c271b7 100644
>> --- a/xen/arch/arm/smpboot.c
>> +++ b/xen/arch/arm/smpboot.c
>> @@ -72,7 +72,7 @@ static void setup_cpu_sibling_map(int cpu)
>> {
>> if ( !zalloc_cpumask_var(&per_cpu(cpu_sibling_mask, cpu)) ||
>> !zalloc_cpumask_var(&per_cpu(cpu_core_mask, cpu)) )
>> - panic("No memory for CPU sibling/core maps\n");
>> + panic("No memory for CPU sibling/core maps");
>>
>> /* A CPU is a sibling with itself and is always on its own core. */
>> cpumask_set_cpu(cpu, per_cpu(cpu_sibling_mask, cpu));
>> diff --git a/xen/arch/arm/time.c b/xen/arch/arm/time.c
>> index 938995d..81e3e28 100644
>> --- a/xen/arch/arm/time.c
>> +++ b/xen/arch/arm/time.c
>> @@ -113,7 +113,7 @@ int __init init_xen_time(void)
>>
>> dev = dt_find_matching_node(NULL, timer_ids);
>> if ( !dev )
>> - panic("Unable to find a compatible timer in the device tree\n");
>> + panic("Unable to find a compatible timer in the device tree");
>>
>> dt_device_set_used_by(dev, DOMID_XEN);
>>
>> @@ -122,7 +122,7 @@ int __init init_xen_time(void)
>> {
>> res = dt_device_get_irq(dev, i, &timer_irq[i]);
>> if ( res )
>> - panic("Timer: Unable to retrieve IRQ %u from the device tree\n",
>> i);
>> + panic("Timer: Unable to retrieve IRQ %u from the device tree",
>> i);
>> }
>>
>> printk("Generic Timer IRQ: phys=%u hyp=%u virt=%u\n",
>> @@ -132,11 +132,11 @@ int __init init_xen_time(void)
>>
>> res = platform_init_time();
>> if ( res )
>> - panic("Timer: Cannot initialize platform timer\n");
>> + panic("Timer: Cannot initialize platform timer");
>>
>> /* Check that this CPU supports the Generic Timer interface */
>> if ( !cpu_has_gentimer )
>> - panic("CPU does not support the Generic Timer v1 interface.\n");
>> + panic("CPU does not support the Generic Timer v1 interface");
>>
>> res = dt_property_read_u32(dev, "clock-frequency", &rate);
>> if ( res )
>> diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c
>> index d39e2d4..8144b2b 100644
>> --- a/xen/arch/arm/traps.c
>> +++ b/xen/arch/arm/traps.c
>> @@ -253,7 +253,7 @@ void panic_PAR(uint64_t par)
>> second_in_first ? " during second stage lookup" : "",
>> fsc_level_str(level));
>>
>> - panic("Error during Hypervisor-to-physical address translation\n");
>> + panic("Error during Hypervisor-to-physical address translation");
>> }
>>
>> static void cpsr_switch_mode(struct cpu_user_regs *regs, int mode)
>> @@ -902,7 +902,7 @@ static void do_debug_trap(struct cpu_user_regs *regs,
>> unsigned int code)
>> show_execution_state(regs);
>> break;
>> default:
>> - panic("DOM%d: Unhandled debug trap %#x\n", domid, code);
>> + panic("DOM%d: Unhandled debug trap %#x", domid, code);
>> break;
>> }
>> }
>> @@ -1187,7 +1187,7 @@ static void do_cp15_32(struct cpu_user_regs *regs,
>> printk("%s p15, %d, r%d, cr%d, cr%d, %d @ 0x%"PRIregister"\n",
>> cp32.read ? "mrc" : "mcr",
>> cp32.op1, cp32.reg, cp32.crn, cp32.crm, cp32.op2, regs->pc);
>> - panic("unhandled 32-bit CP15 access %#x\n", hsr.bits &
>> HSR_CP32_REGS_MASK);
>> + panic("unhandled 32-bit CP15 access %#x", hsr.bits &
>> HSR_CP32_REGS_MASK);
>> }
>> advance_pc(regs, hsr);
>> }
>> @@ -1217,7 +1217,7 @@ static void do_cp15_64(struct cpu_user_regs *regs,
>> printk("%s p15, %d, r%d, r%d, cr%d @ 0x%"PRIregister"\n",
>> cp64.read ? "mrrc" : "mcrr",
>> cp64.op1, cp64.reg1, cp64.reg2, cp64.crm, regs->pc);
>> - panic("unhandled 64-bit CP15 access %#x\n", hsr.bits &
>> HSR_CP64_REGS_MASK);
>> + panic("unhandled 64-bit CP15 access %#x", hsr.bits &
>> HSR_CP64_REGS_MASK);
>> }
>> advance_pc(regs, hsr);
>> }
>> @@ -1247,7 +1247,7 @@ static void do_sysreg(struct cpu_user_regs *regs,
>> sysreg.op2,
>> sysreg.read ? "=>" : "<=",
>> sysreg.reg, regs->pc);
>> - panic("unhandled 64-bit sysreg access %#x\n",
>> + panic("unhandled 64-bit sysreg access %#x",
>> hsr.bits & HSR_SYSREG_REGS_MASK);
>> }
>>
>> diff --git a/xen/arch/x86/apic.c b/xen/arch/x86/apic.c
>> index a52a0e8..0e5e302 100644
>> --- a/xen/arch/x86/apic.c
>> +++ b/xen/arch/x86/apic.c
>> @@ -946,7 +946,7 @@ void __init x2apic_bsp_setup(void)
>> return;
>> }
>> panic("x2APIC: already enabled by BIOS, but "
>> - "iommu_supports_eim failed!\n");
>> + "iommu_supports_eim failed");
>> }
>>
>> if ( (ioapic_entries = alloc_ioapic_entries()) == NULL )
>> @@ -968,7 +968,7 @@ void __init x2apic_bsp_setup(void)
>> {
>> if ( x2apic_enabled )
>> panic("Interrupt remapping could not be enabled while "
>> - "x2APIC is already enabled by BIOS!\n");
>> + "x2APIC is already enabled by BIOS");
>>
>> printk(XENLOG_ERR
>> "Failed to enable Interrupt Remapping: Will not enable
>> x2APIC.\n");
>> diff --git a/xen/arch/x86/bzimage.c b/xen/arch/x86/bzimage.c
>> index 58fda16..d72b832 100644
>> --- a/xen/arch/x86/bzimage.c
>> +++ b/xen/arch/x86/bzimage.c
>> @@ -62,7 +62,7 @@ static void flush_window(void);
>>
>> static __init void error(char *x)
>> {
>> - panic("%s\n", x);
>> + panic("%s", x);
>> }
>>
>> static __init int fill_inbuf(void)
>> diff --git a/xen/arch/x86/cpu/amd.c b/xen/arch/x86/cpu/amd.c
>> index 472df68..64531d9 100644
>> --- a/xen/arch/x86/cpu/amd.c
>> +++ b/xen/arch/x86/cpu/amd.c
>> @@ -465,7 +465,7 @@ static void __devinit init_amd(struct cpuinfo_x86 *c)
>> if (!cpu_has_amd_erratum(c, AMD_ERRATUM_121))
>> opt_allow_unsafe = 1;
>> else if (opt_allow_unsafe < 0)
>> - panic("Xen will not boot on this CPU for security reasons.\n"
>> + panic("Xen will not boot on this CPU for security reasons"
>> "Pass \"allow_unsafe\" if you're trusting all your"
>> " (PV) guest kernels.\n");
>> else if (!opt_allow_unsafe && c == &boot_cpu_data)
>> diff --git a/xen/arch/x86/cpu/mcheck/mce.c b/xen/arch/x86/cpu/mcheck/mce.c
>> index 93d7ae1..b375ef7 100644
>> --- a/xen/arch/x86/cpu/mcheck/mce.c
>> +++ b/xen/arch/x86/cpu/mcheck/mce.c
>> @@ -523,7 +523,7 @@ void mcheck_cmn_handler(struct cpu_user_regs *regs, long
>> error_code,
>> * recovery job but to reset the system.
>> */
>> if (atomic_read(&found_error) == 0)
>> - mc_panic("MCE: No CPU found valid MCE, need reset\n");
>> + mc_panic("MCE: No CPU found valid MCE, need reset");
>> if (!cpumask_empty(&mce_fatal_cpus))
>> {
>> char *ebufp, ebuf[96] = "MCE: Fatal error happened on CPUs ";
>> @@ -1642,7 +1642,7 @@ static int mce_delayed_action(mctelem_cookie_t mctc)
>> dprintk(XENLOG_ERR, "MCE delayed action failed\n");
>> is_mc_panic = 1;
>> x86_mcinfo_dump(mctelem_dataptr(mctc));
>> - panic("MCE: Software recovery failed for the UCR\n");
>> + panic("MCE: Software recovery failed for the UCR");
>> break;
>> case MCER_RECOVERED:
>> dprintk(XENLOG_INFO, "MCE: Error is successfully recovered\n");
>> diff --git a/xen/arch/x86/domain_build.c b/xen/arch/x86/domain_build.c
>> index 232adf8..84ce392 100644
>> --- a/xen/arch/x86/domain_build.c
>> +++ b/xen/arch/x86/domain_build.c
>> @@ -439,7 +439,7 @@ int __init construct_dom0(
>> value = (parms.virt_hv_start_low + mask) & ~mask;
>> BUG_ON(!is_pv_32bit_domain(d));
>> if ( value > __HYPERVISOR_COMPAT_VIRT_START )
>> - panic("Domain 0 expects too high a hypervisor start
>> address.\n");
>> + panic("Domain 0 expects too high a hypervisor start address");
>> HYPERVISOR_COMPAT_VIRT_START(d) =
>> max_t(unsigned int, m2p_compat_vstart, value);
>> }
>> @@ -509,7 +509,7 @@ int __init construct_dom0(
>> count -= PAGE_ALIGN(initrd_len);
>> order = get_order_from_bytes(count);
>> if ( (1UL << order) + PFN_UP(initrd_len) > nr_pages )
>> - panic("Domain 0 allocation is too small for kernel image.\n");
>> + panic("Domain 0 allocation is too small for kernel image");
>>
>> if ( parms.p2m_base != UNSET_ADDR )
>> {
>> @@ -518,7 +518,7 @@ int __init construct_dom0(
>> }
>> page = alloc_domheap_pages(d, order, 0);
>> if ( page == NULL )
>> - panic("Not enough RAM for domain 0 allocation.\n");
>> + panic("Not enough RAM for domain 0 allocation");
>> alloc_spfn = page_to_mfn(page);
>> alloc_epfn = alloc_spfn + d->tot_pages;
>>
>> @@ -535,7 +535,7 @@ int __init construct_dom0(
>> order = get_order_from_pages(count);
>> page = alloc_domheap_pages(d, order, 0);
>> if ( !page )
>> - panic("Not enough RAM for domain 0 initrd.\n");
>> + panic("Not enough RAM for domain 0 initrd");
>> for ( count = -count; order--; )
>> if ( count & (1UL << order) )
>> {
>> @@ -618,7 +618,7 @@ int __init construct_dom0(
>> {
>> page = alloc_domheap_page(NULL, 0);
>> if ( !page )
>> - panic("Not enough RAM for domain 0 PML4.\n");
>> + panic("Not enough RAM for domain 0 PML4");
>> page->u.inuse.type_info = PGT_l4_page_table|PGT_validated|1;
>> l4start = l4tab = page_to_virt(page);
>> maddr_to_page(mpt_alloc)->u.inuse.type_info = PGT_l3_page_table;
>> @@ -830,7 +830,7 @@ int __init construct_dom0(
>> {
>> if ( d->tot_pages + ((round_pgup(vphysmap_end) - va)
>>>> PAGE_SHIFT) + 3 > nr_pages )
>> - panic("Dom0 allocation too small for initial P->M
>> table.\n");
>> + panic("Dom0 allocation too small for initial P->M table");
>>
>> if ( l1tab )
>> {
>> @@ -929,7 +929,7 @@ int __init construct_dom0(
>> va &= PAGE_MASK;
>> }
>> if ( !page )
>> - panic("Not enough RAM for DOM0 P->M table.\n");
>> + panic("Not enough RAM for DOM0 P->M table");
>> }
>>
>> if ( l1tab )
>> @@ -990,7 +990,7 @@ int __init construct_dom0(
>> while ( pfn < nr_pages )
>> {
>> if ( (page = alloc_chunk(d, nr_pages - d->tot_pages)) == NULL )
>> - panic("Not enough RAM for DOM0 reservation.\n");
>> + panic("Not enough RAM for DOM0 reservation");
>> while ( pfn < d->tot_pages )
>> {
>> mfn = page_to_mfn(page);
>> @@ -1072,12 +1072,12 @@ int __init construct_dom0(
>> printk("Dom0 runs in ring 0 (supervisor mode)\n");
>> if ( !test_bit(XENFEAT_supervisor_mode_kernel,
>> parms.f_supported) )
>> - panic("Dom0 does not support supervisor-mode execution\n");
>> + panic("Dom0 does not support supervisor-mode execution");
>> }
>> else
>> {
>> if ( test_bit(XENFEAT_supervisor_mode_kernel, parms.f_required) )
>> - panic("Dom0 requires supervisor-mode execution\n");
>> + panic("Dom0 requires supervisor-mode execution");
>> }
>>
>> rc = 0;
>> diff --git a/xen/arch/x86/hvm/svm/intr.c b/xen/arch/x86/hvm/svm/intr.c
>> index da2bcca..023151a 100644
>> --- a/xen/arch/x86/hvm/svm/intr.c
>> +++ b/xen/arch/x86/hvm/svm/intr.c
>> @@ -175,7 +175,7 @@ void svm_intr_assist(void)
>> /* Guest already enabled an interrupt window. */
>> return;
>> default:
>> - panic("%s: nestedsvm_vcpu_interrupt can't handle value
>> %#x\n",
>> + panic("%s: nestedsvm_vcpu_interrupt can't handle value %#x",
>> __func__, rc);
>> }
>> }
>> diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c
>> index 5512cd5..bddc588 100644
>> --- a/xen/arch/x86/io_apic.c
>> +++ b/xen/arch/x86/io_apic.c
>> @@ -1421,7 +1421,7 @@ static void __init setup_ioapic_ids_from_mpc(void)
>> if (!physid_isset(i, phys_id_present_map))
>> break;
>> if (i >= get_physical_broadcast())
>> - panic("Max APIC ID exceeded!\n");
>> + panic("Max APIC ID exceeded");
>> printk(KERN_ERR "... fixing up to %d. (tell your hw vendor)\n",
>> i);
>> mp_ioapics[apic].mpc_apicid = i;
>> @@ -2135,7 +2135,7 @@ int __init io_apic_get_unique_id (int ioapic, int
>> apic_id)
>> }
>>
>> if (i == get_physical_broadcast())
>> - panic("Max apic_id exceeded!\n");
>> + panic("Max apic_id exceeded");
>>
>> printk(KERN_WARNING "IOAPIC[%d]: apic_id %d already used, "
>> "trying %d\n", ioapic, apic_id, i);
>> diff --git a/xen/arch/x86/mm/mm-locks.h b/xen/arch/x86/mm/mm-locks.h
>> index 3ce3489..769f7bc 100644
>> --- a/xen/arch/x86/mm/mm-locks.h
>> +++ b/xen/arch/x86/mm/mm-locks.h
>> @@ -73,7 +73,7 @@ static inline void _mm_lock(mm_lock_t *l, const char *func,
>> int level, int rec)
>> l->unlock_level = __get_lock_level();
>> }
>> else if ( (unlikely(!rec)) )
>> - panic("mm lock already held by %s\n", l->locker_function);
>> + panic("mm lock already held by %s", l->locker_function);
>> __set_lock_level(level);
>> }
>>
>> diff --git a/xen/arch/x86/mpparse.c b/xen/arch/x86/mpparse.c
>> index 3753704..a38e016 100644
>> --- a/xen/arch/x86/mpparse.c
>> +++ b/xen/arch/x86/mpparse.c
>> @@ -221,7 +221,7 @@ static void __init MP_ioapic_info (struct
>> mpc_config_ioapic *m)
>> if (nr_ioapics >= MAX_IO_APICS) {
>> printk(KERN_CRIT "Max # of I/O APICs (%d) exceeded (found %d).\n",
>> MAX_IO_APICS, nr_ioapics);
>> - panic("Recompile kernel with bigger MAX_IO_APICS!.\n");
>> + panic("Recompile kernel with bigger MAX_IO_APICS");
>> }
>> if (!m->mpc_apicaddr) {
>> printk(KERN_ERR "WARNING: bogus zero I/O APIC address"
>> @@ -241,7 +241,7 @@ static void __init MP_intsrc_info (struct
>> mpc_config_intsrc *m)
>> (m->mpc_irqflag >> 2) & 3, m->mpc_srcbus,
>> m->mpc_srcbusirq, m->mpc_dstapic, m->mpc_dstirq);
>> if (++mp_irq_entries == MAX_IRQ_SOURCES)
>> - panic("Max # of irq sources exceeded!!\n");
>> + panic("Max # of irq sources exceeded");
>> }
>>
>> static void __init MP_lintsrc_info (struct mpc_config_lintsrc *m)
>> @@ -844,7 +844,7 @@ void __init mp_register_ioapic (
>> if (nr_ioapics >= MAX_IO_APICS) {
>> printk(KERN_ERR "ERROR: Max # of I/O APICs (%d) exceeded "
>> "(found %d)\n", MAX_IO_APICS, nr_ioapics);
>> - panic("Recompile kernel with bigger MAX_IO_APICS!\n");
>> + panic("Recompile kernel with bigger MAX_IO_APICS");
>> }
>> if (!address) {
>> printk(KERN_ERR "WARNING: Bogus (zero) I/O APIC address"
>> @@ -943,7 +943,7 @@ void __init mp_override_legacy_irq (
>>
>> mp_irqs[mp_irq_entries] = intsrc;
>> if (++mp_irq_entries == MAX_IRQ_SOURCES)
>> - panic("Max # of irq sources exceeded!\n");
>> + panic("Max # of irq sources exceeded");
>>
>> return;
>> }
>> @@ -1009,7 +1009,7 @@ void __init mp_config_acpi_legacy_irqs (void)
>>
>> mp_irqs[mp_irq_entries] = intsrc;
>> if (++mp_irq_entries == MAX_IRQ_SOURCES)
>> - panic("Max # of irq sources exceeded!\n");
>> + panic("Max # of irq sources exceeded");
>> }
>> }
>>
>> diff --git a/xen/arch/x86/setup.c b/xen/arch/x86/setup.c
>> index e33c34b..f07ee2b 100644
>> --- a/xen/arch/x86/setup.c
>> +++ b/xen/arch/x86/setup.c
>> @@ -1330,12 +1330,12 @@ void __init __start_xen(unsigned long mbi_p)
>> watchdog_setup();
>>
>> if ( !tboot_protect_mem_regions() )
>> - panic("Could not protect TXT memory regions\n");
>> + panic("Could not protect TXT memory regions");
>>
>> /* Create initial domain 0. */
>> dom0 = domain_create(0, DOMCRF_s3_integrity, 0);
>> if ( IS_ERR(dom0) || (alloc_dom0_vcpu0() == NULL) )
>> - panic("Error creating domain 0\n");
>> + panic("Error creating domain 0");
>>
>> dom0->is_privileged = 1;
>> dom0->target = NULL;
>> @@ -1390,7 +1390,7 @@ void __init __start_xen(unsigned long mbi_p)
>> (initrdidx > 0) && (initrdidx < mbi->mods_count)
>> ? mod + initrdidx : NULL,
>> bootstrap_map, cmdline) != 0)
>> - panic("Could not set up DOM0 guest OS\n");
>> + panic("Could not set up DOM0 guest OS");
>>
>> /* Scrub RAM that is still free and so may go to an unprivileged
>> domain. */
>> scrub_heap_pages();
>> diff --git a/xen/arch/x86/smpboot.c b/xen/arch/x86/smpboot.c
>> index 9f81c7b..42b8a59 100644
>> --- a/xen/arch/x86/smpboot.c
>> +++ b/xen/arch/x86/smpboot.c
>> @@ -735,7 +735,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus)
>>
>> if ( !zalloc_cpumask_var(&per_cpu(cpu_sibling_mask, 0)) ||
>> !zalloc_cpumask_var(&per_cpu(cpu_core_mask, 0)) )
>> - panic("No memory for boot CPU sibling/core maps\n");
>> + panic("No memory for boot CPU sibling/core maps");
>>
>> set_cpu_sibling_map(0);
>>
>> diff --git a/xen/arch/x86/tboot.c b/xen/arch/x86/tboot.c
>> index 1eed2e3..ccde4a0 100644
>> --- a/xen/arch/x86/tboot.c
>> +++ b/xen/arch/x86/tboot.c
>> @@ -528,7 +528,7 @@ void tboot_s3_error(int error)
>>
>> printk("MAC for %s before S3 is: 0x%08"PRIx64"\n", what, orig_mac);
>> printk("MAC for %s after S3 is: 0x%08"PRIx64"\n", what, resume_mac);
>> - panic("Memory integrity was lost on resume (%d)\n", error);
>> + panic("Memory integrity was lost on resume (%d)", error);
>> }
>>
>> int tboot_wake_ap(int apicid, unsigned long sipi_vec)
>> diff --git a/xen/arch/x86/time.c b/xen/arch/x86/time.c
>> index 62c3443..e463600 100644
>> --- a/xen/arch/x86/time.c
>> +++ b/xen/arch/x86/time.c
>> @@ -690,7 +690,7 @@ static unsigned long get_cmos_time(void)
>> }
>>
>> if ( unlikely(acpi_gbl_FADT.boot_flags & ACPI_FADT_NO_CMOS_RTC) )
>> - panic("System without CMOS RTC must be booted from EFI\n");
>> + panic("System without CMOS RTC must be booted from EFI");
>>
>> spin_lock_irqsave(&rtc_lock, flags);
>>
>> diff --git a/xen/arch/x86/traps.c b/xen/arch/x86/traps.c
>> index d8b3eac..3b4f28b 100644
>> --- a/xen/arch/x86/traps.c
>> +++ b/xen/arch/x86/traps.c
>> @@ -422,7 +422,7 @@ void fatal_trap(int trapnr, struct cpu_user_regs *regs)
>> }
>>
>> panic("FATAL TRAP: vector = %d (%s)\n"
>> - "[error_code=%04x] %s\n",
>> + "[error_code=%04x] %s",
>> trapnr, trapstr(trapnr), regs->error_code,
>> (regs->eflags & X86_EFLAGS_IF) ? "" : ", IN INTERRUPT CONTEXT");
>> }
>> @@ -569,7 +569,7 @@ static inline void do_trap(
>>
>> show_execution_state(regs);
>> panic("FATAL TRAP: vector = %d (%s)\n"
>> - "[error_code=%04x]\n",
>> + "[error_code=%04x]",
>> trapnr, trapstr(trapnr), regs->error_code);
>> }
>>
>> @@ -1017,7 +1017,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
>> printk("Xen BUG at %s%s:%d\n", prefix, filename, lineno);
>> DEBUGGER_trap_fatal(TRAP_invalid_op, regs);
>> show_execution_state(regs);
>> - panic("Xen BUG at %s%s:%d\n", prefix, filename, lineno);
>> + panic("Xen BUG at %s%s:%d", prefix, filename, lineno);
>>
>> case BUGFRAME_assert:
>> /* ASSERT: decode the predicate string pointer. */
>> @@ -1029,7 +1029,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
>> predicate, prefix, filename, lineno);
>> DEBUGGER_trap_fatal(TRAP_invalid_op, regs);
>> show_execution_state(regs);
>> - panic("Assertion '%s' failed at %s%s:%d\n",
>> + panic("Assertion '%s' failed at %s%s:%d",
>> predicate, prefix, filename, lineno);
>> }
>>
>> @@ -1042,7 +1042,7 @@ void do_invalid_op(struct cpu_user_regs *regs)
>> }
>> DEBUGGER_trap_fatal(TRAP_invalid_op, regs);
>> show_execution_state(regs);
>> - panic("FATAL TRAP: vector = %d (invalid opcode)\n", TRAP_invalid_op);
>> + panic("FATAL TRAP: vector = %d (invalid opcode)", TRAP_invalid_op);
>> }
>>
>> void do_int3(struct cpu_user_regs *regs)
>> @@ -1397,7 +1397,7 @@ void do_page_fault(struct cpu_user_regs *regs)
>> show_page_walk(addr);
>> panic("FATAL PAGE FAULT\n"
>> "[error_code=%04x]\n"
>> - "Faulting linear address: %p\n",
>> + "Faulting linear address: %p",
>> error_code, _p(addr));
>> }
>>
>> @@ -3078,7 +3078,7 @@ void do_general_protection(struct cpu_user_regs *regs)
>>
>> hardware_gp:
>> show_execution_state(regs);
>> - panic("GENERAL PROTECTION FAULT\n[error_code=%04x]\n",
>> regs->error_code);
>> + panic("GENERAL PROTECTION FAULT\n[error_code=%04x]", regs->error_code);
>> }
>>
>> static DEFINE_PER_CPU(struct softirq_trap, softirq_trap);
>> diff --git a/xen/arch/x86/x86_64/mm.c b/xen/arch/x86/x86_64/mm.c
>> index 4a3b3f1..f6ea012 100644
>> --- a/xen/arch/x86/x86_64/mm.c
>> +++ b/xen/arch/x86/x86_64/mm.c
>> @@ -740,7 +740,7 @@ void __init paging_init(void)
>> return;
>>
>> nomem:
>> - panic("Not enough memory for m2p table\n");
>> + panic("Not enough memory for m2p table");
>> }
>>
>> void __init zap_low_mappings(void)
>> diff --git a/xen/arch/x86/x86_64/traps.c b/xen/arch/x86/x86_64/traps.c
>> index bcf72b6..ad09415 100644
>> --- a/xen/arch/x86/x86_64/traps.c
>> +++ b/xen/arch/x86/x86_64/traps.c
>> @@ -250,7 +250,7 @@ void do_double_fault(struct cpu_user_regs *regs)
>> _show_registers(regs, crs, CTXT_hypervisor, NULL);
>> show_stack_overflow(cpu, regs);
>>
>> - panic("DOUBLE FAULT -- system shutdown\n");
>> + panic("DOUBLE FAULT -- system shutdown");
>> }
>>
>> void toggle_guest_mode(struct vcpu *v)
>> diff --git a/xen/common/page_alloc.c b/xen/common/page_alloc.c
>> index 0701333..c82aba6 100644
>> --- a/xen/common/page_alloc.c
>> +++ b/xen/common/page_alloc.c
>> @@ -92,7 +92,7 @@ static unsigned int __initdata nr_bootmem_regions;
>>
>> static void __init boot_bug(int line)
>> {
>> - panic("Boot BUG at %s:%d\n", __FILE__, line);
>> + panic("Boot BUG at %s:%d", __FILE__, line);
>> }
>> #define BOOT_BUG_ON(p) if ( p ) boot_bug(__LINE__);
>>
>> diff --git a/xen/common/schedule.c b/xen/common/schedule.c
>> index 0f45f07..1192fe2 100644
>> --- a/xen/common/schedule.c
>> +++ b/xen/common/schedule.c
>> @@ -1389,7 +1389,7 @@ void __init scheduler_init(void)
>>
>> printk("Using scheduler: %s (%s)\n", ops.name, ops.opt_name);
>> if ( SCHED_OP(&ops, init) )
>> - panic("scheduler returned error on init\n");
>> + panic("scheduler returned error on init");
>>
>> if ( sched_ratelimit_us &&
>> (sched_ratelimit_us > XEN_SYSCTL_SCHED_RATELIMIT_MAX
>> diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c
>> index 508f845..532c426 100644
>> --- a/xen/drivers/char/console.c
>> +++ b/xen/drivers/char/console.c
>> @@ -1057,7 +1057,7 @@ void panic(const char *fmt, ...)
>> console_start_sync();
>> printk("\n****************************************\n");
>> printk("Panic on CPU %d:\n", smp_processor_id());
>> - printk("%s", buf);
>> + printk("%s\n", buf);
>> printk("****************************************\n\n");
>> if ( opt_noreboot )
>> printk("Manual reset required ('noreboot' specified)\n");
>> @@ -1088,7 +1088,7 @@ void __bug(char *file, int line)
>> console_start_sync();
>> printk("Xen BUG at %s:%d\n", file, line);
>> dump_execution_state();
>> - panic("Xen BUG at %s:%d\n", file, line);
>> + panic("Xen BUG at %s:%d", file, line);
>> for ( ; ; ) ;
>> }
>>
>> diff --git a/xen/drivers/passthrough/iommu.c
>> b/xen/drivers/passthrough/iommu.c
>> index 93ad122..7d5463c 100644
>> --- a/xen/drivers/passthrough/iommu.c
>> +++ b/xen/drivers/passthrough/iommu.c
>> @@ -475,7 +475,7 @@ int __init iommu_setup(void)
>>
>> if ( (force_iommu && !iommu_enabled) ||
>> (force_intremap && !iommu_intremap) )
>> - panic("Couldn't enable %s and iommu=required/force\n",
>> + panic("Couldn't enable %s and iommu=required/force",
>> !iommu_enabled ? "IOMMU" : "Interrupt Remapping");
>>
>> if ( !iommu_enabled )
>> diff --git a/xen/drivers/passthrough/pci.c b/xen/drivers/passthrough/pci.c
>> index 4aa8f64..c5c8344 100644
>> --- a/xen/drivers/passthrough/pci.c
>> +++ b/xen/drivers/passthrough/pci.c
>> @@ -104,7 +104,7 @@ void __init pt_pci_init(void)
>> {
>> radix_tree_init(&pci_segments);
>> if ( !alloc_pseg(0) )
>> - panic("Could not initialize PCI segment 0\n");
>> + panic("Could not initialize PCI segment 0");
>> }
>>
>> int __init pci_add_segment(u16 seg)
>> diff --git a/xen/drivers/passthrough/vtd/dmar.h
>> b/xen/drivers/passthrough/vtd/dmar.h
>> index a2b97d6..af1feef 100644
>> --- a/xen/drivers/passthrough/vtd/dmar.h
>> +++ b/xen/drivers/passthrough/vtd/dmar.h
>> @@ -118,7 +118,7 @@ do { \
>> break; \
>> if ( NOW() > start_time + DMAR_OPERATION_TIMEOUT ) { \
>> if ( !kexecing ) \
>> - panic("%s:%d:%s: DMAR hardware is malfunctional\n",\
>> + panic("%s:%d:%s: DMAR hardware is malfunctional",\
>> __FILE__, __LINE__, __func__); \
>> else \
>> break; \
>> diff --git a/xen/drivers/passthrough/vtd/iommu.c
>> b/xen/drivers/passthrough/vtd/iommu.c
>> index 76d0bfd..b6b48e2 100644
>> --- a/xen/drivers/passthrough/vtd/iommu.c
>> +++ b/xen/drivers/passthrough/vtd/iommu.c
>> @@ -722,7 +722,7 @@ static void iommu_enable_translation(struct
>> acpi_drhd_unit *drhd)
>> if ( is_igd_drhd(drhd) && !is_igd_vt_enabled_quirk() )
>> {
>> if ( force_iommu )
>> - panic("BIOS did not enable IGD for VT properly, crash Xen for
>> security purpose!\n");
>> + panic("BIOS did not enable IGD for VT properly, crash Xen for
>> security purpose");
>> else
>> {
>> dprintk(XENLOG_WARNING VTDPREFIX,
>> @@ -2344,7 +2344,7 @@ static void vtd_resume(void)
>> return;
>>
>> if ( init_vtd_hw() != 0 && force_iommu )
>> - panic("IOMMU setup failed, crash Xen for security purpose!\n");
>> + panic("IOMMU setup failed, crash Xen for security purpose");
>>
>> for_each_drhd_unit ( drhd )
>> {
>> diff --git a/xen/drivers/passthrough/vtd/qinval.c
>> b/xen/drivers/passthrough/vtd/qinval.c
>> index 6a410d8..ef5de99 100644
>> --- a/xen/drivers/passthrough/vtd/qinval.c
>> +++ b/xen/drivers/passthrough/vtd/qinval.c
>> @@ -220,7 +220,7 @@ static int queue_invalidate_wait(struct iommu *iommu,
>> if ( NOW() > (start_time + DMAR_OPERATION_TIMEOUT) )
>> {
>> print_qi_regs(iommu);
>> - panic("queue invalidate wait descriptor was not
>> executed\n");
>> + panic("queue invalidate wait descriptor was not executed");
>> }
>> cpu_relax();
>> }
>> diff --git a/xen/xsm/flask/hooks.c b/xen/xsm/flask/hooks.c
>> index b1e2593..7cdef04 100644
>> --- a/xen/xsm/flask/hooks.c
>> +++ b/xen/xsm/flask/hooks.c
>> @@ -1586,7 +1586,7 @@ static __init int flask_init(void)
>>
>> original_ops = xsm_ops;
>> if ( register_xsm(&flask_ops) )
>> - panic("Flask: Unable to register with XSM.\n");
>> + panic("Flask: Unable to register with XSM");
>>
>> ret = security_load_policy(policy_buffer, policy_size);
>>
>
prev parent reply other threads:[~2013-12-03 9:21 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-11-25 10:06 [PATCH] xen/panic: Fix string inconsistencies in callers of panic() Andrew Cooper
2013-11-25 10:24 ` Ian Campbell
2013-11-25 10:42 ` Andrew Cooper
2013-11-25 10:44 ` Tim Deegan
2013-11-25 10:54 ` George Dunlap
2013-12-03 9:21 ` Keir Fraser [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=CEC35313.6876D%keir.xen@gmail.com \
--to=keir.xen@gmail.com \
--cc=JBeulich@suse.com \
--cc=andrew.cooper3@citrix.com \
--cc=george.dunlap@eu.citrix.com \
--cc=ian.campbell@citrix.com \
--cc=keir@xen.org \
--cc=stefano.stabellini@citrix.com \
--cc=tim@xen.org \
--cc=xen-devel@lists.xen.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).