Branch: refs/heads/master Home: https://github.com/qemu/qemu Commit: b55b1afda942306e4e40420aced1524bd83ba16d https://github.com/qemu/qemu/commit/b55b1afda942306e4e40420aced1524bd83ba16d Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018)
Changed paths: M target/xtensa/translate.c Log Message: ----------- target/xtensa: dump correct physical registers xtensa_cpu_dump_state outputs CPU physical registers as is, without synchronization from current window. That may result in different values printed for the current window and corresponding physical registers. Synchronize physical registers from window before dumping. Cc: qemu-sta...@nongnu.org Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: b9317a2a69ac78f79ee4965037c8eaa407ed0724 https://github.com/qemu/qemu/commit/b9317a2a69ac78f79ee4965037c8eaa407ed0724 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M target/xtensa/translate.c Log Message: ----------- target/xtensa: mark register windows in the dump Add arrows that mark beginning of register windows and position of the current window in the windowed register file. Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: 1b7b26e4748580dce3ec671ce7ed3d65a986cf9c https://github.com/qemu/qemu/commit/1b7b26e4748580dce3ec671ce7ed3d65a986cf9c Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M target/xtensa/cpu.h M target/xtensa/gdbstub.c M target/xtensa/helper.c M target/xtensa/overlay_tool.h Log Message: ----------- target/xtensa: use correct number of registers in gdbstub System emulation should provide access to all registers, userspace emulation should only provide access to unprivileged registers. Record register flags from GDB register map definition, calculate both num_regs and num_core_regs if either is zero. Use num_regs in system emulation, num_core_regs in userspace emulation gdbstub. Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: 9fb40342d4b32152cedf32efe28b59ec3b932bd8 https://github.com/qemu/qemu/commit/9fb40342d4b32152cedf32efe28b59ec3b932bd8 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M configure M target/xtensa/cpu.h M target/xtensa/translate.c Log Message: ----------- target/xtensa: support MTTCG - emit TCG barriers for MEMW, EXTW, S32RI and L32AI; - do atomic_cmpxchg_i32 for S32C1I. Cc: Emilio G. Cota <c...@braap.org> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: e530acd7de8178ca1eb30ac4c19508e6f68a172d https://github.com/qemu/qemu/commit/e530acd7de8178ca1eb30ac4c19508e6f68a172d Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M include/exec/cpu-all.h M include/exec/cpu_ldst.h M linux-user/mmap.c M linux-user/syscall.c Log Message: ----------- linux-user: fix mmap/munmap/mprotect/mremap/shmat In linux-user QEMU that runs for a target with TARGET_ABI_BITS bigger than L1_MAP_ADDR_SPACE_BITS an assertion in page_set_flags fires when mmap, munmap, mprotect, mremap or shmat is called for an address outside the guest address space. mmap and mprotect should return ENOMEM in such case. Change definition of GUEST_ADDR_MAX to always be the last valid guest address. Account for this change in open_self_maps. Add macro guest_addr_valid that verifies if the guest address is valid. Add function guest_range_valid that verifies if address range is within guest address space and does not wrap around. Use that macro in mmap/munmap/mprotect/mremap/shmat for error checking. Cc: qemu-sta...@nongnu.org Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: 21b869a321871728077a5d0469a05f0d34041650 https://github.com/qemu/qemu/commit/21b869a321871728077a5d0469a05f0d34041650 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M linux-user/syscall.c Log Message: ----------- linux-user: fix assertion in shmdt shmdt fails to call mmap_lock/mmap_unlock around page_set_flags, resulting in the following assertion: page_set_flags: Assertion `have_mmap_lock()' failed. Wrap shmdt internals into mmap_lock/mmap_unlock. Cc: qemu-sta...@nongnu.org Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: 72d75bb3166047c74db2931eecb92f9684e70ead https://github.com/qemu/qemu/commit/72d75bb3166047c74db2931eecb92f9684e70ead Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M linux-user/mmap.c Log Message: ----------- linux-user: fix target_mprotect/target_munmap error return values target_mprotect/target_munmap return value goes through get_errno at the call site, thus the functions must either set errno to host error code and return -1 or return negative guest error code. Do the latter. Cc: qemu-sta...@nongnu.org Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: bf9c3a5a96dfabcdcb7964110866bb9bc06a43c1 https://github.com/qemu/qemu/commit/bf9c3a5a96dfabcdcb7964110866bb9bc06a43c1 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-13 (Tue, 13 Mar 2018) Changed paths: M linux-user/mmap.c M linux-user/qemu.h Log Message: ----------- linux-user: drop unused target_msync function target_msync is not used, remove its declaration and implementation. Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: ba7651fba54199e5dedbbd08157687291b9dbae3 https://github.com/qemu/qemu/commit/ba7651fba54199e5dedbbd08157687291b9dbae3 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-16 (Fri, 16 Mar 2018) Changed paths: A default-configs/xtensa-linux-user.mak A default-configs/xtensaeb-linux-user.mak M linux-user/elfload.c M linux-user/main.c M linux-user/signal.c M linux-user/syscall.c M linux-user/syscall_defs.h A linux-user/xtensa/syscall.h A linux-user/xtensa/syscall_nr.h A linux-user/xtensa/target_cpu.h A linux-user/xtensa/target_elf.h A linux-user/xtensa/target_signal.h A linux-user/xtensa/target_structs.h A linux-user/xtensa/target_syscall.h A linux-user/xtensa/termbits.h M target/xtensa/Makefile.objs M target/xtensa/cpu.c M target/xtensa/cpu.h M target/xtensa/helper.c M target/xtensa/helper.h M target/xtensa/op_helper.c M target/xtensa/translate.c Log Message: ----------- target/xtensa: add linux-user support Import list of syscalls from the kernel source. Conditionalize code/data that is only used with softmmu. Implement exception handlers. Implement signal hander (only the core registers for now, no coprocessors or TIE). Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: 4b279225258e04d96c7919b5d8aedb234dae9685 https://github.com/qemu/qemu/commit/4b279225258e04d96c7919b5d8aedb234dae9685 Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-16 (Fri, 16 Mar 2018) Changed paths: M scripts/qemu-binfmt-conf.sh Log Message: ----------- qemu-binfmt-conf.sh: add qemu-xtensa Register qemu-xtensa and qemu-xtensaeb for transparent linux userspace emulation. Cc: Riku Voipio <riku.voi...@iki.fi> Cc: Laurent Vivier <laur...@vivier.eu> Reviewed-by: Laurent Vivier <laur...@vivier.eu> Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: b8105d2194f06ab8e3566467e8e3c582457424bb https://github.com/qemu/qemu/commit/b8105d2194f06ab8e3566467e8e3c582457424bb Author: Max Filippov <jcmvb...@gmail.com> Date: 2018-03-16 (Fri, 16 Mar 2018) Changed paths: M MAINTAINERS Log Message: ----------- MAINTAINERS: fix W: address for xtensa Signed-off-by: Max Filippov <jcmvb...@gmail.com> Commit: e1e44a9916b4318e943aecd669e096222cb3eaeb https://github.com/qemu/qemu/commit/e1e44a9916b4318e943aecd669e096222cb3eaeb Author: Peter Maydell <peter.mayd...@linaro.org> Date: 2018-03-17 (Sat, 17 Mar 2018) Changed paths: M MAINTAINERS M configure A default-configs/xtensa-linux-user.mak A default-configs/xtensaeb-linux-user.mak M linux-user/elfload.c M linux-user/main.c M linux-user/signal.c M linux-user/syscall.c M linux-user/syscall_defs.h A linux-user/xtensa/syscall.h A linux-user/xtensa/syscall_nr.h A linux-user/xtensa/target_cpu.h A linux-user/xtensa/target_elf.h A linux-user/xtensa/target_signal.h A linux-user/xtensa/target_structs.h A linux-user/xtensa/target_syscall.h A linux-user/xtensa/termbits.h M target/xtensa/Makefile.objs M target/xtensa/cpu.c M target/xtensa/cpu.h M target/xtensa/gdbstub.c M target/xtensa/helper.c M target/xtensa/helper.h M target/xtensa/op_helper.c M target/xtensa/overlay_tool.h M target/xtensa/translate.c Log Message: ----------- Merge remote-tracking branch 'remotes/xtensa/tags/20180316-xtensa' into staging target/xtensa linux-user support. - small cleanup for xtensa registers dumping (-d cpu); - add support for debugging linux-user process with xtensa-linux-gdb (as opposed to xtensa-elf-gdb), which can only access unprivileged registers; - enable MTTCG for target/xtensa; - cleanup in linux-user/mmap area making sure that it works correctly with limited 30-bit-wide user address space; - import xtensa-specific definitions from the linux kernel, conditionalize user-only/softmmu-only code and add handlers for signals, exceptions, process/thread creation and core registers dumping. # gpg: Signature made Fri 16 Mar 2018 16:46:19 GMT # gpg: using RSA key 51F9CC91F83FA044 # gpg: Good signature from "Max Filippov <filip...@cadence.com>" # gpg: aka "Max Filippov <max.filip...@cogentembedded.com>" # gpg: aka "Max Filippov <jcmvb...@gmail.com>" # Primary key fingerprint: 2B67 854B 98E5 327D CDEB 17D8 51F9 CC91 F83F A044 * remotes/xtensa/tags/20180316-xtensa: MAINTAINERS: fix W: address for xtensa qemu-binfmt-conf.sh: add qemu-xtensa target/xtensa: add linux-user support linux-user: drop unused target_msync function linux-user: fix target_mprotect/target_munmap error return values linux-user: fix assertion in shmdt linux-user: fix mmap/munmap/mprotect/mremap/shmat target/xtensa: support MTTCG target/xtensa: use correct number of registers in gdbstub target/xtensa: mark register windows in the dump target/xtensa: dump correct physical registers Signed-off-by: Peter Maydell <peter.mayd...@linaro.org> # Conflicts: # linux-user/syscall.c Compare: https://github.com/qemu/qemu/compare/979454028cf9...e1e44a9916b4