| Branch: | Revision:

root / linux-user / main.c @ 93148aa5

History | View | Annotate | Download (118.4 kB)

# Date Author Comment
50171d42 02/02/2012 05:51 pm 陳韋任

linux-user/main.c: Add option to user-mode emulation so that user can specify log file name

QEMU linux user-mode's default log file name is "/tmp/qemu.log". In order to
change the log file name, user need to modify the source code then recompile
QEMU. This patch allow user use "-D logfile" option to specify the log file...
b4916d7b 12/02/2011 12:50 pm Dong Xu Wang

fix spelling in linux-user sub directory

Cc: Riku Voipio <>
Signed-off-by: Dong Xu Wang <>
Signed-off-by: Stefan Hajnoczi <>

9e0e2f96 10/27/2011 02:43 pm Richard Henderson

ppc64-linux-user: Fix syscall return type.

Use target_ulong instead of hard-coded uint32_t.
Remove the disabled printf's that are redundant with -strace.

Signed-off-by: Richard Henderson <>
Signed-off-by: Riku Voipio <>

75f22e4e 10/27/2011 02:43 pm Richard Henderson

sparc-linux-user: Handle SIGILL.

Signed-off-by: Richard Henderson <>
Signed-off-by: Riku Voipio <>

59f7182f 10/27/2011 02:43 pm Richard Henderson

sparc-linux-user: Fixup sending SIGSEGV

Signed-off-by: Richard Henderson <>
Signed-off-by: Riku Voipio <>

1386d4c0 10/21/2011 06:59 pm Peter Maydell

linux-user: Fix broken "-version" option

Fix the "-version" option, which was accidentally broken in commit
fc9c541: * exit after printing version information rather than proceeding
blithely onward (and likely printing the full usage message) * correct the cut-n-paste error in the usage message for it...

fc9c5412 09/09/2011 10:48 am Johannes Schauer

introduce environment variables for all qemu-user options

(Edits by Riku Voipio to apply to current HEAD)

Rework option parsing code for linux-user in a table-driven manner to allow
environment variables for all commandline options.

Also generate usage() output from option table....

94c19610 09/09/2011 10:47 am An-Cheng Huang

linux-user: Verify MIPS syscall arguments

On MIPS, some syscall arguments are taken from the stack. This patch adds
verification such that do_syscall() is only invoked if all arguments
have been successfully taken from the stack.

Signed-off-by: Riku Voipio <>...

29fb0f25 09/09/2011 10:47 am An-Cheng Huang

linux-user: Fix MIPS indirect syscall handling

Change the number of argument for MIPS sys_syscall from 0 to 8. This
allows arguments for indirect syscalls to be processed correctly.

Signed-off-by: Riku Voipio <>
Reviewed-by: Peter Maydell <>...

ff7a981a 09/09/2011 10:46 am Peter Maydell

linux-user: Exit with an error if we couldn't set up gdbserver

If gdbserver_start() fails (usually because we couldn't bind to the
requested TCP port) then exit qemu rather than blithely continuing.
This brings the linux-user behaviour in to line with system mode....

97cc7560 09/09/2011 10:46 am Dr. David Alan Gilbert

linux-user: Implement new ARM 64 bit cmpxchg kernel helper

linux-user: Implement new ARM 64 bit cmpxchg kernel helper

Linux 3.1 will have a new kernel-page helper for ARM implementing
64 bit cmpxchg. Implement this helper in QEMU linux-user mode: * Provide kernel helper emulation for 64bit cmpxchg...

22a78d64 08/22/2011 07:47 pm Edgar E. Iglesias

microblaze-user: Deliver SIGFPE on div by zero

Signed-off-by: Edgar E. Iglesias <>

7267c094 08/21/2011 07:01 am Anthony Liguori

Use glib memory allocation and free functions

qemu_malloc/qemu_free no longer exist after this commit.

Signed-off-by: Anthony Liguori <>

d5ab9713 08/05/2011 06:57 pm Jan Kiszka

Avoid allocating TCG resources in non-TCG mode

Do not allocate TCG-only resources like the translation buffer when
running over KVM or XEN. Saves a "few" bytes in the qemu address space
and is also conceptually cleaner.

Signed-off-by: Jan Kiszka <>...

4b5dfd82 07/30/2011 08:20 am Peter Maydell

user: Restore debug usage message for '-d ?' in user mode emulation

The code which prints the debug usage message on '-d ?' for *-user
has to come before the check for "not enough arguments", so that
"qemu-foo -d ?" prints the list of possible debug log items rather than...

e6e5bd2d 07/12/2011 02:34 pm Wesley W. Terpstra

mips: null pointer deref should segfault

Dereferencing a null pointer causes an exception 0xC (EXCP_AdEL)
instead of EXCP_TLBL. This should also trigger a segfault.

Signed-off-by: Wesley W. Terpstra <>
Signed-off-by: Riku Voipio <>

7c2f6157 07/12/2011 02:33 pm Wesley W. Terpstra

mips: missing syscall returns wrong errno

Return -TARGET_ENOSYS instead of -ENOSYS from linux-user/main.c * Caused strange 'Level 2 synchronization messages' instead of
correctly reporting the syscall was missing. * Made glibc simply fail instead of using older syscalls...

053ebb27 07/12/2011 02:32 pm Wesley W. Terpstra

mips: sigaltstack args

The syscall sigaltstack takes two parameters, not zero. This patch
should have no impact as only values above 4 influence the runtime
behaviour. Nevertheless, it is wrong.

Signed-off-by: Wesley W. Terpstra <>
Signed-off-by: Riku Voipio <>

d979e8eb 07/11/2011 04:12 pm Peter Maydell

linux-user: Add syscall numbers from kernel

Add syscall numbers for new syscall numbers; this brings us
into line with Linux

Signed-off-by: Peter Maydell <>
Signed-off-by: Riku Voipio <>

1dfdcaa8 06/28/2011 09:57 pm Edgar E. Iglesias

user: Fix -d debug logging for usermode emulation

Signed-off-by: Edgar E. Iglesias <>

cd59dd87 06/27/2011 07:26 pm Anthony Liguori

Merge remote-tracking branch 'riku/linux-user-for-upstream' into staging

2b41f10e 06/26/2011 09:25 pm Blue Swirl

Remove exec-all.h include directives

Most exec-all.h include directives are now useless, remove them.

Signed-off-by: Blue Swirl <>

5945cfcb 06/21/2011 08:30 pm Peter Maydell

linux-user: Bump do_syscall() up to 8 syscall arguments

On 32 bit MIPS a few syscalls have 7 arguments, and so to call
them via NR_syscall the guest needs to be able to pass 8 arguments
to do_syscall(). Raise the number of arguments do_syscall() takes

c235d738 06/15/2011 07:51 pm Matthew Fernandez

Command line support for altering the log file location

Add command line support for logging to a location other than /tmp/qemu.log.

With logging enabled (command line option -d), the log is written to
the hard-coded path /tmp/qemu.log. This patch adds support for writing...

129d8aa5 05/31/2011 08:18 pm Richard Henderson

target-alpha: Rationalize internal processor registers.

Delete all the code that tried to emulate the real IPRs of some
unnamed CPU. Replace those with just 3 slots that we can use to
communicate trap information between the helper functions that
signal exceptions and the OS trap handler....

07b6c13b 05/31/2011 08:18 pm Richard Henderson

target-alpha: Tidy exception constants.

There's no need to attempt to match EXCP_* values with PALcode entry
point offsets. Instead, compress all the values to make for more
efficient switch statements within QEMU.

We will be doing TLB fill within QEMU proper, not within the PALcode,...

05c8a1e4 05/23/2011 11:33 pm Aurelien Jarno

Merge branch 's390-next' of git://

  • 's390-next' of git://
    s390x: complain when allocating ram fails
    s390x: fix memory detection for guests > 64GB
    s390x: change mapping base to allow guests > 2GB
    s390x: Fix debugging for unknown sigp order codes...
dcfd14b3 05/22/2011 01:47 pm Blue Swirl

Delete unused tb_invalidate_page_range

tb_invalidate_page_range() was intended to be used to invalidate an
area of a TB which the guest explicitly flushes from i-cache. However,
QEMU detects writes to code areas where TBs have been generated, so
his has never been useful....

a4c075f1 05/20/2011 06:35 pm Ulrich Hecht

s390x: s390x-linux-user support

This patch adds support for running s390x binaries in the linux-user emulation

Signed-off-by: Ulrich Hecht <>
Signed-off-by: Alexander Graf <>

5ba18547 05/08/2011 12:59 pm Stefan Weil

Fix spelling in comments (intruction -> instruction)

Signed-off-by: Stefan Weil <>
Signed-off-by: Stefan Hajnoczi <>

d2fbca94 04/12/2011 09:49 pm Guan Xuetao

unicore32: necessary modifications for other files to support unicore32

Signed-off-by: Guan Xuetao <>
Signed-off-by: Blue Swirl <>

2e42d52d 04/12/2011 12:57 am Edgar E. Iglesias

microblaze: Correct ec mask in debug print

Signed-off-by: Edgar E. Iglesias <>

6672b0b2 02/09/2011 10:33 am Peter Maydell

linux-user: Add support for -version option

Add support to the linux-user qemu for the -version command line
option, bringing it into line with the system emulation qemu.

Signed-off-by: Peter Maydell <>
Signed-off-by: Riku Voipio <>

2c9adbda 12/07/2010 05:37 pm Peter Maydell

ARM: fix ldrexd/strexd

Correct ldrexd and strexd code to always read and write the
high word of the 64-bit value from addr+4.
Also make ldrexd and strexd agree that for a 64 bit value the
address in env->exclusive_addr is that of the low word.

This fixes the issues reported in...

48e15fc2 12/03/2010 03:09 pm Nathan Froyd

linux-user: fix memory leaks with NPTL emulation

Running programs that create large numbers of threads, such as this
snippet from libstdc++'s

const int max_thread_count = 4;
const int max_loop_count = 10000;
for (int j = 0; j < max_loop_count; j++)...
f66724c9 10/05/2010 09:53 pm Stefan Weil

Add new user mode option -ignore-environment

An empty environment is sometimes useful in user mode.
The new option provides it for linux-user and bsd-user
(darwin-user still has no environment related options).

The patch also adds the documentation for other...

b76da7e3 09/09/2010 11:24 am Edgar E. Iglesias

microblaze: User-mode emulation of hw-excp signals

Signed-off-by: Edgar E. Iglesias <>

6d1db8c3 07/22/2010 06:52 am Laurent Vivier

linux-user: display cpu list.

As it is done for qemu-system with "-cpu ?", when cpu_list_id() is missing
for a target, call cpu_list() instead.

Signed-off-by: Laurent Vivier <>
Signed-off-by: Aurelien Jarno <>

7ee2822c 06/10/2010 01:09 am Paolo Bonzini


Signed-off-by: Paolo Bonzini <>
Signed-off-by: Aurelien Jarno <>

0fddbbf2 06/09/2010 05:10 pm Nathan Froyd

linux-user: honor low bit of entry PC for MIPS

Signed-off-by: Nathan Froyd <>
Signed-off-by: Aurelien Jarno <>

68a1c816 05/29/2010 04:27 am Paul Brook

Pre-allocate guest address space

Allow pre-allocation of the guest virtual address space in usermode emulation.

Signed-off-by: Paul Brook <>

0be1d07c 05/29/2010 12:27 am Richard Henderson

alpha-linux-user: Fill in SI_CODE for SIGSEGV.

Signed-off-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

9002ec79 05/21/2010 07:41 pm Richard Henderson

tcg: Initialize the prologue after GUEST_BASE is fixed.

This will allow backends to make intelligent choices about how
to implement GUEST_BASE.

Signed-off-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

a5b3b13b 05/21/2010 07:22 pm Richard Henderson

alpha-linux-user: Fix sigprocmask.

Alpha passes oldset by value in a register, and returns the newset
as the return value; as compared to the standard implementation in
which both are passed by reference. This requires being able to
distinguish negative return values that are not errors. Do this in...

1b6bd8c7 05/21/2010 07:22 pm Richard Henderson

alpha-linux-user: Fix siginfo.si_addr for SIGSEGV and SIGBUS.

Signed-off-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

81bbe906 05/18/2010 08:30 pm

linux-user: rlimit conversion between host and target.

rlim_t conversion between host and target added.
Otherwise there are some incorrect case like
- RLIM_INFINITY on 32bit target > 64bit host.
RLIM_INFINITY on 64bit host > mips and sparc target ?
Big value(for 32bit target) on 64bit host -> 32bit target....

ac316ca4 04/27/2010 06:50 am Richard Henderson

target-alpha: Implement rs/rc properly.

This is a per-cpu flag; there's no need for a spinlock of any kind.

We were also failing to manipulate the flag with $31 as a target reg
and failing to clear the flag on execution of a return-from-interrupt

6910b8f6 04/27/2010 06:50 am Richard Henderson

target-alpha: Fix load-locked/store-conditional.

Use an exception plus start_exclusive to implement the compare-and-swap.
This follows the example set by the MIPS and PPC ports.

Signed-off-by: Richard Henderson <>
Signed-off-by: Aurelien Jarno <>

2cc20260 04/25/2010 09:04 pm Richard Henderson

linux-user: Fix Sparc64 syscall returns.

Signed-off-by: Richard Henderson <>
Signed-off-by: Blue Swirl <>

f7177937 04/08/2010 12:11 pm Aurelien Jarno

linux-user: switch default ppc64 CPU to 970fx from 970

Signed-off-by: Aurelien Jarno <>

29e922b6 03/29/2010 10:24 pm Blue Swirl

Compile qemu-timer only once

Arrange various declarations so that also non-CPU code can access
them, adjust users.

Move CPU specific code to cpus.c.

Signed-off-by: Blue Swirl <>

703e0e89 03/27/2010 03:16 pm Richard Henderson

linux-user: Use RLIMIT_STACK for default stack size.

The current default stack limit of 512kB is far too small; a fair
number of gcc testsuite failures (for all guests) are directly
attributable to this. Using the -s option in every invocation of
the emulator is annoying to say the least....

14f24e14 03/12/2010 06:29 pm Richard Henderson

linux-user: Fix mmap_find_vma returning invalid addresses.

Don't return addresses that aren't properly aligned for the guest,
e.g. when the guest has a larger page size than the host. Don't
return addresses that are outside the virtual address space for the...

6049f4f8 02/28/2010 06:54 pm Richard Henderson

alpha-linux-user: Implement signals.

Move userland PALcode handling into linux-user main loop so that
we can send signals from there. This also makes alpha_palcode.c
system-level only, so don't build it for userland. Add defines
for GENTRAP PALcall mapping to signals....

dad081ee 02/24/2010 12:36 am Richard Henderson

target-alpha: Reduce internal processor registers for user-mode.

The existing set of IPRs is totally irrelevant to user-mode emulation.
Indeed, they most are irrelevant to implementing kernel-mode emulation,
and would only be relevant to PAL-mode emulation, which I suspect that...

b5ec5ce0 02/23/2010 12:16 am john cooper

Add cpu model configuration support..

This is a reimplementation of prior versions which adds
the ability to define cpu models for contemporary processors.
The added models are likewise selected via -cpu <name>,
and are intended to displace the existing convention...

f7001a3b 12/24/2009 01:17 am Aurelien Jarno

linux-user: fix build with gcc-4.1

Signed-off-by: Aurelien Jarno <>

73b01960 12/21/2009 05:03 pm Alexander Graf

PPC: Make DCR uint32_t

For what I know DCR is always 32 bits wide, so we should also use uint32_t to
pass it along the stacks.

This fixes a warning when compiling qemu-system-ppc64 with KVM enabled, making
it compile without --disable-werror

Signed-off-by: Alexander Graf <>...

b711de95 12/21/2009 02:52 pm Aurelien Jarno

PPC64: Fix alternate timebase

Fix the alternate time base the same way as the default timebase. SPR_ATBL
should return a 64-bit value on 64 bit implementations.

Signed-off-by: Aurelien Jarno <>

e3ea6529 12/21/2009 02:42 pm Alexander Graf

PPC64: Fix timebase

On PPC we have a 64-bit time base. Usually (PPC32) this is accessed using
two separate 32 bit SPR accesses to SPR_TBU and SPR_TBL.

On PPC64 the SPR_TBL register acts as 64 bit though, so we get the full
64 bits as return value. If we only take the lower ones, fine. But Linux...

d032d1b4 12/19/2009 08:45 pm Riku Voipio

linux-user: Fix mmap_lock ordering

mmap_lock() can be called while tb_lock() is being held. To
avoid deadlock when one thread is holding mmap_lock and another
tb_lock, always lock first tb_lock().

Signed-off-by: Riku Voipio <>
Signed-off-by: Aurelien Jarno <>

725b8a69 12/11/2009 05:38 pm Paul Brook

Fix ARM userspace strex implementation.

Signed-off-by: Paul Brook <>

e9273455 11/24/2009 03:10 pm Paul Brook

Add missing break.

Signed-off-by: Paul Brook <>

426f5abc 11/22/2009 11:35 pm Paul Brook

ARM atomic ops rewrite

Implement ARMv6 atomic ops (ldrex/strex) using the same trick as PPC.

Signed-off-by: Paul Brook <>

5499b6ff 11/22/2009 03:12 pm Aurelien Jarno

target-mips: rename CP0_LLAddr into lladdr

The variable CP0_LLAddr represent the full lladdr, not the actual
register value, which is only part of this value and depends on the

Signed-off-by: Aurelien Jarno <>

b55a37c9 11/07/2009 12:37 pm Blue Swirl

user: move CPU reset call to main.c for x86/PPC/Sparc

Signed-off-by: Blue Swirl <>

c227f099 10/02/2009 12:12 am Anthony Liguori

Revert "Get rid of _t suffix"

In the very least, a change like this requires discussion on the list.

The naming convention is goofy and it causes a massive merge problem. Something
like this must be presented on the list first so people can provide input...

99a0949b 10/01/2009 09:45 pm malc

Get rid of _t suffix

Some not so obvious bits, slirp and Xen were left alone for the time

Signed-off-by: malc <>

50108930 09/13/2009 10:38 pm Blue Swirl

Revert "Fix Sparc/Linux host breakage by df70204db53e3611af986f434e74a882bce190ca"

This reverts commit 91b40c5be84a478e98c0416325844a7f66d0efae.

Signed-off-by: Blue Swirl <>

91b40c5b 09/13/2009 04:33 pm Blue Swirl

Fix Sparc/Linux host breakage by df70204db53e3611af986f434e74a882bce190ca

While i386, x86_64 and Sparc64/OpenBSD still worked after
df70204db53e3611af986f434e74a882bce190ca, Sparc32 and Sparc64 Linux hosts

Partially revert the commit: make the restored code conditional to...

df70204d 09/12/2009 04:15 pm Kirill A. Shutemov

Fix text relocations in linux-user targets

There is a link hack in linux-user which produces an executable that
looks like PIE, but always has text relocations since all object files
isn't position-independent (compiled without -fpic/-fpie). Dynamic loader...

90e189ec 08/16/2009 02:13 pm Blue Swirl

Replace local ADDRX/PADDRX macros with TARGET_FMT_lx/plx

Signed-off-by: Blue Swirl <>

8194f35a 08/04/2009 11:22 pm Igor Kovalenko

Sparc64: replace tsptr with helper routine

tl and tsptr of members sparc64 cpu state must be changed
simultaneously to keep trap state window in sync with current
trap level. Currently translation of store to tl does not change
tsptr, which leads to corrupt trap state on corresponding...

56f066bb 08/03/2009 07:33 pm Nathan Froyd

linux-user: handle POWERPC_EXCP_STCX

We handle conditional stores as an exception so we can ensure that no
other thread is changing memory out from underneath us.

Signed-off-by: Nathan Froyd <>
Signed-off-by: malc <>

2f7bb878 07/27/2009 10:10 pm Juan Quintela


Signed-off-by: Juan Quintela <>
Signed-off-by: Anthony Liguori <>

379f6698 07/17/2009 03:12 pm Paul Brook

Userspace guest address offsetting

Re-implement GUEST_BASE support.
Offset guest ddress space by default if the guest binary contains
regions below the host mmap_min_addr.
Implement support for i386, x86-64 and arm hosts.

Signed-off-by: Riku Voipio <>...

8167ee88 07/16/2009 11:47 pm Blue Swirl

Update to a hopefully more future proof FSF address

Signed-off-by: Blue Swirl <>

430c7ec7 07/15/2009 08:03 pm malc

Avoid SIGSEGV when dumping cpu state without enabled logging

Signed-off-by: malc <>

5f650495 07/10/2009 12:06 am Isaku Yamahata

consolidate user cpu_{in, out}[bwl] into ioport-user.c

Signed-off-by: Isaku Yamahata <>
Signed-off-by: Anthony Liguori <>

2152390d 07/09/2009 11:09 pm Anthony Liguori

Merge commit 'linux-user/linux-user-for-upstream' into tmp-staging

590bc601 07/09/2009 07:45 pm Paul Brook

MIPS atomic instructions

Implement MIPS ll/sc instructions using atomic compare+exchange.

Signed-off-by: Paul Brook <>

18113962 07/09/2009 03:11 pm Paul Brook

Fix MIPS sys_clone

The clone syscall takes 6 args.

Signed-off-by: Paul Brook <>

fd4d81dd 07/08/2009 05:01 pm Arnaud Patard

linux-user: increment MAX_ARG_PAGES

There's a error When doing something like that :
find / -type f -print0 | xargs -0 echo

[ done in a arm chroot with qemu-arm and linux binfmt stuff or with
find / -type f -print0 | qemu-arm -L <path> <path>/usr/bin/xargs -0...

edf8e2af 06/16/2009 04:56 pm Mika Westerberg

linux-user: implemented ELF coredump support for ARM target

When target process is killed with signal (such signal that
should dump core) a coredump file is created. This file is
similar than coredump generated by Linux (there are few exceptions

b779e29e 05/26/2009 10:10 pm Edgar E. Iglesias

microblaze: linux-user support.

Signed-off-by: Edgar E. Iglesias <>

bcd4933a 05/16/2009 12:36 am Nathan Froyd

linux-user: ppc signal handling

Implement setup_{,rt_}frame and do_{,rt_}sigreturn for PPC 32-bit. Use
the same TARGET_QEMU_ESIGRETURN hack as for MIPS to avoid clobbering
register state on a sigreturn.

Signed-off-by: Nathan Froyd <>...

001faf32 05/13/2009 08:53 pm Blue Swirl

Replace gcc variadic macro extension with C99 version

Signed-off-by: Blue Swirl <>

0b1bcb00 04/21/2009 04:41 am pbrook

MIPS signal handling fixes.

Also fixes a register corruption bug in do_sigreturn. When "returning"
from sigreturn we are actually restoring the virtual cpu state from the
signal frame. This is actually surprisingly hard to observe in practice.

Typically an thread be blocked in a FUTEX_WAIT call when the signal arrives,...

e4474235 04/21/2009 04:03 am pbrook

MIPS: Raise SIGSEGV, not SIGILL when an access faults.

Signed-off-by: Paul Brook <>

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162

7d8cec95 04/15/2009 07:11 pm aurel32

linux-user: add support for passing contents of argv0

Added switch -0 (zero) which can be used to pass argv0 to
target process. The main use is for a binfmt_misc wrapper when
the "P - preserve-argv0" setting is used.

From: Mika Westerberg

Signed-off-by: Riku Voipio <>...

088ab16c 04/09/2009 06:20 pm pbrook

Enable generic accepts-anything cpu by default for usermode emulation.

Signed-off-by: Paul Brook <>

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162

4a19f1ec 04/08/2009 02:17 am pbrook

Add --with-pkgversion.
Allows distributors to identify their builds without needing to hack the

Signed-off-by: Paul Brook <>

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162

1b530a6d 04/05/2009 11:08 pm aurel32

Add new command line option -singlestep for tcg single stepping.

This replaces a compile time option for some targets and adds
this feature to targets which did not have a compile time option.

Add monitor command to enable or disable single step mode.

Modify monitor command "info status" to display single step mode....

3098dba0 03/07/2009 11:28 pm aurel32

Use a dedicated function to request exit from execution loop

Signed-off-by: Aurelien Jarno <>

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162

c2764719 03/07/2009 05:24 pm pbrook

The _exit syscall is used for both thread termination in NPTL applications,
and process termination in legacy applications. Try to guess which we want
based on the presence of multiple threads.

Also implement locking when modifying the CPU list.

Signed-off-by: Paul Brook <>...

2d18e637 02/28/2009 10:14 pm blueswir1

Flush stdout after printing usage()

Fixes qemu-arm|grep cpu - with _exit() getting output from qemu --help
is a bit random. Since no atexit() handlers are registered for user mode
emulation, just use exit() instead.

Signed-off-by: Riku Voipio <>...

491150db 02/09/2009 09:02 pm aurel32

Fix crash caused by missing command line arguments

Signed-off-by: Stefan Weil <>
Signed-off-by: Aurelien Jarno <>

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162

d088d664 01/30/2009 10:09 pm aurel32

linux-user: identify running binary in /proc/self/exe

Some applications like to test /proc/self/exe to find
out who they are. Fake the result of readlink() for
them. Use realpath() to return full path to binary
(which the links /proc/self/exe are)

Signed-off-by: Riku Voipio <>...

04a6dfeb 01/30/2009 09:59 pm aurel32

linux-user: Add generic env variable handling

Adds support for qemu to modify target process environment
variables using -E and -U commandline switches. This replaces
eventually the -drop-ld-preload flag.

Signed-off-by: Aurelien Jarno <>...

2e77eac6 01/20/2009 06:57 pm blueswir1

Fix user emulator breakage, based on patch by Riku Voipio

git-svn-id: svn:// c046a42c-6fe2-441c-8c8c-71466251a162