qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] ppc64-linux-user broken since "PPC: Unify dcbzl code pa


From: Alexander Graf
Subject: Re: [Qemu-devel] ppc64-linux-user broken since "PPC: Unify dcbzl code path" ?
Date: Fri, 26 Apr 2013 08:56:49 +0200

On 22.04.2013, at 08:37, Riku Voipio wrote:

> Hi,
> 
> While testing my linux-user smoke-testing setup, I noticed that 
> with current qemu head:
> 
> ./ppc64-linux-user/qemu-ppc64 ../../qemu-smoke/ppc64/busybox ls
> busybox: malloc.c:3096: sYSMALLOc: Assertion `(old_top == (((mbinptr) (((char 
> *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, 
> fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned 
> long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * 
> (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size 
> & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
> qemu: uncaught target signal 6 (Aborted) - core dumped
> Aborted (core dumped)
> 
> With a bisect run, the following commit appear breaks this:
> 
> 8e33944f8c648e579a2827ae6f30e4d66ee87f96
> 
>    PPC: Unify dcbzl code path
> 
> Indeed, after reverting the same command runs fine.  

Oh, great. There are 2 bugs coming together here.

1) Linux-user has the dcbzl hack bit in HID5 set by default. This is wrong. It 
should really just expose the cache line size via auxv.
2) The patch you mentioned restricts the HID5 check to softmmu. So we never 
even check for the HID5 bit.

Let me write up a patch quickly that at least fixes 2).


Alex




reply via email to

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