[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH v3 00/13] linux-user: __{get, put}_user return value
From: |
riku . voipio |
Subject: |
[Qemu-devel] [PATCH v3 00/13] linux-user: __{get, put}_user return value cleanup |
Date: |
Tue, 10 Jun 2014 16:20:29 +0300 |
From: Riku Voipio <address@hidden>
This series is a cleanup and gcc-4.9 buildfix:
linux-user/syscall.c: In function ‘host_to_target_stat64’:
linux-user/qemu.h:301:19: error: right-hand operand of comma expression has no
effect [-Werror=unused-value]
((hptr), (x)), 0)
removing the unused 0 moves the bar:
linux-user/main.c: In function ‘arm_kernel_cmpxchg64_helper’:
linux-user/qemu.h:330:15: error: void value not ignored as it ought to be
__ret = __put_user((x), __hptr); \
And after fixing that, we see there is a lot of reading the return
value of __put_user and __get_user in signal.c. A lot of this code
has been copied from kernel, where the accessor functions might fail
Qemu uses different model of accessing. Access is already checked in
lock_user(), and thus __put/__get user cannot fail.
So this patchset clears signal.c from reading __get_user and
__put_user return values, and then fixes the definitions of the macros
Changes v3 -> pull req
rebase against HEAD
01/13: signal/all: remove __get/__put_user return value reading
- Removed err variable from m68k/target_rt_restore_ucontext
Changes pull req to -> 2
05/13: keep valid_user_regs
08/13: remove unneccesary sigsegv label as suggested by Peter
Changes v2 ->v1
Rebase on HEAD
Rewrote Subject and improved commit messages of all patches
Riku Voipio (13):
signal/all: remove __get/__put_user return value reading
signal/x86/setup_frame: __put_user cleanup
signal/all: remove return value from copy_siginfo_to_user
signal/all: remove return value from setup_sigcontext
signal/all: remove return value from restore_sigcontext
signal/sparc/restore_fpu_state: remove
signal/all/do_sigaltstack remove __get_user value check
signal/all/do_sigreturn - remove __get_user checks
signal/all/setup_frame remove __put_user checks
signal/ppc/{save,restore}_user_regs remove __put/get error checks
signal/sparc64_set_context: remove __get_user checks
signal/ppc/do_setcontext remove __get_user return check
linux-user: fix gcc-4.9 compiler error on __{get,put]}_user
linux-user/qemu.h | 12 +-
linux-user/signal.c | 1227 +++++++++++++++++++++------------------------------
2 files changed, 508 insertions(+), 731 deletions(-)
--
2.0.0.rc2
- [Qemu-devel] [PATCH v3 00/13] linux-user: __{get, put}_user return value cleanup,
riku . voipio <=
- [Qemu-devel] [PATCH v3 02/13] signal/x86/setup_frame: __put_user cleanup, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 12/13] signal/ppc/do_setcontext remove __get_user return check, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 13/13] linux-user: fix gcc-4.9 compiler error on __{get, put]}_user, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 07/13] signal/all/do_sigaltstack remove __get_user value check, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 03/13] signal/all: remove return value from copy_siginfo_to_user, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 10/13] signal/ppc/{save, restore}_user_regs remove __put/get error checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 04/13] signal/all: remove return value from setup_sigcontext, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 08/13] signal/all/do_sigreturn - remove __get_user checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 09/13] signal/all/setup_frame remove __put_user checks, riku . voipio, 2014/06/10
- [Qemu-devel] [PATCH v3 01/13] signal/all: remove __get/__put_user return value reading, riku . voipio, 2014/06/10