Hi, I will bisect the code and reply back with the last working patch shortly. In the meantime, I'm working on a different machine where the latest pull is working, but am having trouble with pthreads on a sparc32 target. It seems that forking is supported, but when running a pthread based program on sparc32 user mode, when I run with gdb, there is a core dump in static_code_gen_buffer(). I've put together a small test suite that exposes this problem. The tar at his link contains the following: http://users.soe.ucsc.edu/~cromom/mt_test.tar.gz
fork_test.out : test program with forking (works with qemu user mode) ThreadSafeFIFO.out: test program with pthreads (has core dump with qemu user mode) >From gdb I can see that when running ThreadSafeFIFO, do_fork is called twice, >but there is only one call to pthread_create(). Thanks for the help, David -----Original Message----- From: Blue Swirl [mailto:blauwir...@gmail.com] Sent: Thursday, April 15, 2010 12:16 PM To: Gabriel Southern Cc: David Munday; qemu-devel@nongnu.org Subject: Re: [Qemu-devel] sparc-linux-usermode broken after latest pull On 4/15/10, Gabriel Southern <gabriel.south...@gmail.com> wrote: > On Thu, Apr 15, 2010 at 9:33 AM, Blue Swirl <blauwir...@gmail.com> wrote: > > On 4/15/10, David Munday <cro...@soe.ucsc.edu> wrote: > >> Hello, > >> Our lab just did a pull from the qemu repository and now we are unable > to run a 32-bit sparc target on a 64-bit host. This functionality was working > before we did the pull. The error message we get is:mmap: No such device or > address > >> > >> And then the process dies. We are not sure why this is occuring but have > verified against our earlier qemu copy that the behavior did not exist before > our pull on Sunday. > >> > >> We appreciate any insights anyone might have. > > > > I can't replicate this, sparc-linux-user, sparc32plus-linux-user and > > sparc64-linux-user still work like before on amd64 Linux host. > > > > What is the host and which program? Could you bisect the problem, > > there haven't been that many commits in last few days? > > > > > I have also noticed that sparc-linux-user does not compile on an AMD64 > host (CentOS 5.4): > > cc1: warnings being treated as errors > /mada/users/gsouther/projs/qemu/linux-user/mmap.c: In function > ‘mmap_find_vma’: > /mada/users/gsouther/projs/qemu/linux-user/mmap.c:367: warning: > comparison is always false due to limited range of data type > make[1]: *** [mmap.o] Error 1 > gmake: *** [subdir-sparc-linux-user] Error 2 > > The compilation warning can be fixed by removing the ul specifier from > -1ul, but I'm wondering if you had noticed the same problem. Does not happen here for some reason. I think removing the ul would be correct since that is what the code above uses, but even better would be to use (abi_ulong)-1 consistently.