qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] Funny -m arguments can crash


From: Blue Swirl
Subject: Re: [Qemu-devel] Funny -m arguments can crash
Date: Fri, 27 Jul 2012 19:00:00 +0000

On Wed, Jul 25, 2012 at 11:49 AM, Markus Armbruster <address@hidden> wrote:
> Asking for "funny" memory sizes sometimes crashes for me.  For instance
> -m 0.8 or the equivalent -m 838860b.  -m 0.7 appears to work.
>
> Should we round memory sizes?  How?  Where?

We had a discussion about this recently:
http://lists.nongnu.org/archive/html/qemu-devel/2012-06/msg02800.html

>
>
>
> $ gdb --args qemu-system-x86_64 -nodefaults --enable-kvm -S -vnc :0 -monitor 
> stdio -m 0.8
> [...]
> (gdb) r
> Starting program: /home/armbru/bin/upstream-qemu -nodefaults --enable-kvm -S 
> -vnc :0 -monitor stdio -m 0.8
> [Thread debugging using libthread_db enabled]
> Using host libthread_db library "/lib64/libthread_db.so.1".
> [New Thread 0x7ffff6efe700 (LWP 29525)]
> upstream-qemu: /work/armbru/qemu/exec.c:2263: register_subpage: Assertion 
> `existing->mr->subpage || existing->mr == &io_mem_unassigned' failed.
>
> Program received signal SIGABRT, Aborted.
> 0x00000033e0835965 in raise () from /lib64/libc.so.6
> [...]
> (gdb) bt
> #0  0x00000033e0835965 in raise () from /lib64/libc.so.6
> #1  0x00000033e0837118 in abort () from /lib64/libc.so.6
> #2  0x00000033e082e6e2 in __assert_fail_base () from /lib64/libc.so.6
> #3  0x00000033e082e792 in __assert_fail () from /lib64/libc.so.6
> #4  0x00000000006078fa in register_subpage (section=0x7fffffffd4e0)
>     at /work/armbru/qemu/exec.c:2263
> #5  0x0000000000607b55 in cpu_register_physical_memory_log (section=
>     0x7fffffffd6a0, readonly=false) at /work/armbru/qemu/exec.c:2303
> #6  0x0000000000609d1c in core_region_nop (listener=0xac5e60, section=
>     0x7fffffffd6a0) at /work/armbru/qemu/exec.c:3183
> #7  0x0000000000667a58 in address_space_update_topology_pass (as=0x12fdca0,
>     old_view=..., new_view=..., adding=true) at /work/armbru/qemu/memory.c:693
> #8  0x0000000000668045 in address_space_update_topology (as=0x12fdca0)
>     at /work/armbru/qemu/memory.c:722
> #9  0x0000000000668147 in memory_region_update_topology (mr=0x0)
>     at /work/armbru/qemu/memory.c:743
> #10 0x0000000000668252 in memory_region_transaction_commit ()
>     at /work/armbru/qemu/memory.c:764
> #11 0x0000000000636612 in i440fx_update_memory_mappings (d=0x13a9310)
>     at /work/armbru/qemu/hw/i386/../piix_pci.c:155
> #12 0x0000000000636db6 in i440fx_common_init (device_name=0x7ea470 "i440FX",
>     pi440fx_state=0x7fffffffdb98, piix3_devfn=0x7fffffffdb88, isa_bus=
>     0x7fffffffdb90, pic=0x13a49c0, address_space_mem=0x1381150,
>     address_space_io=0x1381220, ram_size=0, pci_hole_start=838860,
>     pci_hole_size=4294128436, pci_hole64_start=4294967296, pci_hole64_size=
>     4611686018427387904, pci_address_space=0x13a4200, ram_memory=0x13a42b0)
>     at /work/armbru/qemu/hw/i386/../piix_pci.c:330
> #13 0x0000000000636ea8 in i440fx_init (pi440fx_state=0x7fffffffdb98,
>     piix3_devfn=0x7fffffffdb88, isa_bus=0x7fffffffdb90, pic=0x13a49c0,
>     address_space_mem=0x1381150, address_space_io=0x1381220, ram_size=838860,
>     pci_hole_start=838860, pci_hole_size=4294128436, pci_hole64_start=
>     4294967296, pci_hole64_size=4611686018427387904, pci_memory=0x13a4200,
>     ram_memory=0x13a42b0) at /work/armbru/qemu/hw/i386/../piix_pci.c:349
> #14 0x000000000063469b in pc_init1 (system_memory=0x1381150, system_io=
>     0x1381220, ram_size=838860, boot_device=0x7fffffffdee0 "cad",
>     kernel_filename=0x0, kernel_cmdline=0x7cad82 "", initrd_filename=0x0,
>     cpu_model=0x0, pci_enabled=1, kvmclock_enabled=1)
>     at /work/armbru/qemu/hw/i386/../pc_piix.c:193
> #15 0x0000000000634c0e in pc_init_pci (ram_size=838860, boot_device=
>     0x7fffffffdee0 "cad", kernel_filename=0x0, kernel_cmdline=0x7cad82 "",
>     initrd_filename=0x0, cpu_model=0x0)
>     at /work/armbru/qemu/hw/i386/../pc_piix.c:297
> #16 0x000000000057a89e in main (argc=10, argv=0x7fffffffe118, envp=
>     0x7fffffffe170) at /work/armbru/qemu/vl.c:3520
> (gdb) up 4
> #4  0x00000000006078fa in register_subpage (section=0x7fffffffd4e0)
>     at /work/armbru/qemu/exec.c:2263
> 2263        assert(existing->mr->subpage || existing->mr == 
> &io_mem_unassigned);
> (gdb) p/x *section
> $1 = {mr = 0x1399860, address_space = 0x1381150, offset_within_region =
>     0xcccc, size = 0x334, offset_within_address_space = 0xccccc, readonly =
>     0x0}
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]