#
a7bd621d |
| 10-Jan-2011 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'mst/for_anthony' into staging
|
#
6107ff12 |
| 10-Jan-2011 |
Michael S. Tsirkin <mst@redhat.com> |
Merge remote branch 'origin/master' into pci
|
#
497aebb9 |
| 08-Jan-2011 |
Aurelien Jarno <aurelien@aurel32.net> |
Merge branch 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu * 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu: Remove dead code for ARM semihosting c
Merge branch 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu * 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu: Remove dead code for ARM semihosting commandline handling Fix commandline handling for ARM semihosted executables linux-user: Fix incorrect NaN detection in ARM nwfpe emulation softfloat: Implement floatx80_is_any_nan() and float128_is_any_nan() linux-user: Implement FS_IOC_FIEMAP ioctl linux-user: Support ioctls whose parameter size is not constant linux-user: Implement sync_file_range{,2} syscalls
show more ...
|
#
285da2b9 |
| 06-Jan-2011 |
Peter Maydell <peter.maydell@linaro.org> |
linux-user: Implement FS_IOC_FIEMAP ioctl Implement the FS_IOC_FIEMAP ioctl using the new support for custom handling of ioctls; this is needed because the struct that is passed incl
linux-user: Implement FS_IOC_FIEMAP ioctl Implement the FS_IOC_FIEMAP ioctl using the new support for custom handling of ioctls; this is needed because the struct that is passed includes a variable-length array. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
show more ...
|
#
d2ef05bb |
| 06-Jan-2011 |
Peter Maydell <peter.maydell@linaro.org> |
linux-user: Support ioctls whose parameter size is not constant Some ioctls (for example FS_IOC_FIEMAP) use structures whose size is not constant. The generic argument conversion code in
linux-user: Support ioctls whose parameter size is not constant Some ioctls (for example FS_IOC_FIEMAP) use structures whose size is not constant. The generic argument conversion code in do_ioctl() cannot handle this, so add support for implementing a special-case handler for a particular ioctl which does the conversion itself. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
show more ...
|
#
c727f47d |
| 06-Jan-2011 |
Peter Maydell <peter.maydell@linaro.org> |
linux-user: Implement sync_file_range{,2} syscalls Implement the missing syscalls sync_file_range and sync_file_range2. The latter in particular is used by newer versions of apt on Ubunt
linux-user: Implement sync_file_range{,2} syscalls Implement the missing syscalls sync_file_range and sync_file_range2. The latter in particular is used by newer versions of apt on Ubuntu for ARM. Signed-off-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
show more ...
|
#
2e44928e |
| 17-Dec-2010 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'jvrao/for-anthony' into staging
|
#
bcd47878 |
| 03-Dec-2010 |
Edgar E. Iglesias <edgar@axis.com> |
Merge branch 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu * 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu: linux-user: fix mips and ppc to use UI
Merge branch 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu * 'linux-user-for-upstream' of git://gitorious.org/qemu-maemo/qemu: linux-user: fix mips and ppc to use UID16 update binfmt conf linux-user: fix compiler error on nptl ARM: linux-user: Restore iWMMXT state from ucontext on sigreturn ARM: linux-user: Expose iWMMXT registers to signal handlers ARM: linux-user: Restore VFP state from ucontext on sigreturn ARM: linux-user: Expose VFP registers to signal handlers ARM: Expose vfp_get_fpscr() and vfp_set_fpscr() to C code ARM: linux-user: Correct size of padding in target_ucontext_v2 target-sparc: remove unused functions cpu_lock(), cpu_unlock() ARM: enable XScale/iWMMXT in linux-user mode linux-user: Translate getsockopt level option linux-user: remove unnecessary local from __get_user(), __put_user() linux-user: fix memory leaks with NPTL emulation linux-user: mmap_reserve() not controlled by RESERVED_VA [PATCH] target-arm: remove unused functions cpu_lock(), cpu_unlock()
show more ...
|
#
9190749f |
| 26-Nov-2010 |
Riku Voipio <riku.voipio@nokia.com> |
linux-user: fix compiler error on nptl Some compilers detect that new_stack isnt used after dd75d784 Signed-off-by: Riku Voipio <riku.voipio@nokia.com>
|
#
f3b974cd |
| 26-Nov-2010 |
Jamie Lentin <jm@lentin.co.uk> |
linux-user: Translate getsockopt level option n setsockopt, the socket level options are translated to the hosts' architecture before the real syscall is called, e.g. TARGET_SO_TYPE
linux-user: Translate getsockopt level option n setsockopt, the socket level options are translated to the hosts' architecture before the real syscall is called, e.g. TARGET_SO_TYPE -> SO_TYPE. This patch does the same with getsockopt. Tested on a x86 host emulating MIPS. Without it:- $ grep getsockopt host.strace 31311 getsockopt(3, SOL_SOCKET, 0x1007 /* SO_??? */, 0xbff17208, 0xbff17204) = -1 ENOPROTOOPT (Protocol not available) With:- $ grep getsockopt host.strace 25706 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 Whitespace cleanup: Riku Voipio Signed-off-by: Jamie Lentin <jm@lentin.co.uk> Signed-off-by: Riku Voipio <riku.voipio@iki.fi>
show more ...
|
#
48e15fc2 |
| 29-Oct-2010 |
Nathan Froyd <froydnj@codesourcery.com> |
linux-user: fix memory leaks with NPTL emulation Running programs that create large numbers of threads, such as this snippet from libstdc++'s pthread7-rope.cc: const int max_t
linux-user: fix memory leaks with NPTL emulation Running programs that create large numbers of threads, such as this snippet from libstdc++'s pthread7-rope.cc: const int max_thread_count = 4; const int max_loop_count = 10000; ... for (int j = 0; j < max_loop_count; j++) { ... for (int i = 0; i < max_thread_count; i++) pthread_create (&tid[i], NULL, thread_main, 0); for (int i = 0; i < max_thread_count; i++) pthread_join (tid[i], NULL); } in user-mode emulation will quickly run out of memory. This is caused by a failure to free memory in do_syscall prior to thread exit: /* TODO: Free CPU state. */ pthread_exit(NULL); The first step in fixing this is to make all TaskStates used by QEMU dynamically allocated. The TaskState used by the initial thread was not, as it was allocated on main's stack. So fix that, free the cpu_env, free the TaskState, and we're home free, right? Not exactly. When we create a thread, we do: ts = qemu_mallocz(sizeof(TaskState) + NEW_STACK_SIZE); ... new_stack = ts->stack; ... ret = pthread_attr_setstack(&attr, new_stack, NEW_STACK_SIZE); If we blindly free the TaskState, then, we yank the current (host) thread's stack out from underneath it while it still has things to do, like calling pthread_exit. That causes problems, as you might expect. The solution adopted here is to let the C library allocate the thread's stack (so the C library can properly clean it up at pthread_exit) and provide a hint that we want NEW_STACK_SIZE bytes of stack. With those two changes, we're done, right? Well, almost. You see, we're creating all these host threads and their parent threads never bother to check that their children are finished. There's no good place for the parent threads to do so. Therefore, we need to create the threads in a detached state so the parent thread doesn't have to call pthread_join on the child to release the child's resources; the child does so automatically. With those three major changes, we can comfortably run programs like the above without exhausting memory. We do need to delete 'stack' from the TaskState structure. Signed-off-by: Nathan Froyd <froydnj@codesourcery.com> Signed-off-by: Riku Voipio <riku.voipio@nokia.com>
show more ...
|
#
b907b69d |
| 27-Oct-2010 |
Michael S. Tsirkin <mst@redhat.com> |
Merge branch 'pci' into for_anthony
|
#
a287916c |
| 20-Sep-2010 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'mst/for_anthony' into staging
|
#
38724253 |
| 18-Sep-2010 |
Blue Swirl <blauwirbel@gmail.com> |
linux-user: fix socklen_t comparisons On many systems, socklen_t is defined as unsigned. This means that checks for negative values are not meaningful. Fix by explicitly casting
linux-user: fix socklen_t comparisons On many systems, socklen_t is defined as unsigned. This means that checks for negative values are not meaningful. Fix by explicitly casting to a signed integer. This also avoids some warnings with GCC flag -Wtype-limits. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
show more ...
|
#
97374d38 |
| 16-Jun-2010 |
Paul Brook <paul@codesourcery.com> |
Usermode exec-stack fix When loading a shared library that requires an executable stack, glibc uses the mprotext PROT_GROWSDOWN flag to achieve this. We don't support PROT_GROWSDOWN.
Usermode exec-stack fix When loading a shared library that requires an executable stack, glibc uses the mprotext PROT_GROWSDOWN flag to achieve this. We don't support PROT_GROWSDOWN. Add a special case to handle changing the stack permissions in this way. Signed-off-by: Paul Brook <paul@codesourcery.com>
show more ...
|
#
a4673e27 |
| 14-Jun-2010 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'kwolf/for-anthony' into staging Conflicts: hw/pc.c
|
#
d35b261c |
| 04-Jun-2010 |
Richard Henderson <rth@twiddle.net> |
s390x: Avoid _llseek. There's no _llseek on s390x either. Replace the existing test for __x86_64__ with a functional test for __NR_llseek. Signed-off-by: Richard Henderson <rth
s390x: Avoid _llseek. There's no _llseek on s390x either. Replace the existing test for __x86_64__ with a functional test for __NR_llseek. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
9c678ccd |
| 24-May-2010 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'kwolf/for-anthony' into staging
|
#
3853528a |
| 24-May-2010 |
Anthony Liguori <aliguori@us.ibm.com> |
Merge remote branch 'qmp/for-anthony' into staging
|
#
9e42382f |
| 07-May-2010 |
Riku Voipio <riku.voipio@nokia.com> |
linux-user: do not warn for missing pselect6 Libc will fallback gracefully if pselect6 is not available. Thus put pselect6 to nowarn until the atomicity issues of the original pselect6
linux-user: do not warn for missing pselect6 Libc will fallback gracefully if pselect6 is not available. Thus put pselect6 to nowarn until the atomicity issues of the original pselect6 patch are dealt with. Signed-off-by: Riku Voipio <riku.voipio@nokia.com> Cc: Michael Casadevall <mcasadevall@ubuntu.com> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
a5b3b13b |
| 03-May-2010 |
Richard Henderson <rth@twiddle.net> |
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 ar
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 the same way as the Alpha Linux kernel, by storing a zero in V0 in the implementation of the syscall. At the same time, fix a think-o in the regular sigprocmask path in which we passed the target, rather than the host, HOW value. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
f43ce12b |
| 03-May-2010 |
Richard Henderson <rth@twiddle.net> |
alpha-linux-user: Fix sigsuspend parameters. Alpha passes the signal set in a register, not by reference. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurel
alpha-linux-user: Fix sigsuspend parameters. Alpha passes the signal set in a register, not by reference. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
9231733a |
| 03-May-2010 |
Richard Henderson <rth@twiddle.net> |
alpha-linux-user: Fix getxpid. Put ppid in the second return register. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|
#
fb41a66e |
| 03-May-2010 |
Richard Henderson <rth@twiddle.net> |
alpha-linux-user: Fix pipe return mechanism. At the same time, tidy the code wrt MIPS and SH4 which have the same two register return mechanism. Fix confusion between pipe and pipe2
alpha-linux-user: Fix pipe return mechanism. At the same time, tidy the code wrt MIPS and SH4 which have the same two register return mechanism. Fix confusion between pipe and pipe2 with an explicit flags=0, when the guest will not be using the two register return mechanism. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
show more ...
|
#
7dd46c02 |
| 03-May-2010 |
Richard Henderson <rth@twiddle.net> |
alpha-linux-user: Fix brk error return. Signed-off-by: Richard Henderson <rth@twiddle.net> Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
|