Message ID | 20221020115209.1761864-1-alex.bennee@linaro.org |
---|---|
Headers | show |
Series | testing/next (docker, avocado, s390x, MAINTAINERS) | expand |
On 20.10.22 13:52, Alex Bennée wrote: > The s390x EXecute instruction is a bit weird as we synthesis the > executed instruction from what we have stored in memory. This missed > the plugin instrumentation. > > Work around this with a special helper to inform the rest of the > translator about the instruction so things stay consistent. > > Signed-off-by: Alex Bennée <alex.bennee@linaro.org> > Cc: Richard Henderson <richard.henderson@linaro.org> > > --- > v2 > - s/w/b/ for translator_fake_ldb > - add comment to extract_insn > - reword commit message > --- > include/exec/translator.h | 17 +++++++++++++++++ > target/s390x/tcg/translate.c | 6 ++++++ > 2 files changed, 23 insertions(+) > > diff --git a/include/exec/translator.h b/include/exec/translator.h > index 3b77f5f4aa..af2ff95cd5 100644 > --- a/include/exec/translator.h > +++ b/include/exec/translator.h > @@ -211,6 +211,23 @@ translator_ldq_swap(CPUArchState *env, DisasContextBase *db, > return ret; > } > > +/** > + * translator_fake_ldb - fake instruction load > + * @insn8: byte of instruction > + * @pc: program counter of instruction > + * > + * This is a special case helper used where the instruction we are > + * about to translate comes from somewhere else (e.g. being > + * re-synthesised for s390x "ex"). It ensures we update other areas of > + * the translator with details of the executed instruction. > + */ > + > +static inline void translator_fake_ldb(uint8_t insn8, abi_ptr pc) > +{ > + plugin_insn_append(pc, &insn8, sizeof(insn8)); > +} > + > + ^ nit: one emtpy line would have been sufficient Reviewed-by: David Hildenbrand <david@redhat.com>
Hi Alex, On Thu, Oct 20, 2022 at 9:53 PM Alex Bennée <alex.bennee@linaro.org> wrote: > > Hi, > > The testing/next changes have accumulated a few more fixes since the > last posting. Including: > > - a bunch of Bin Meng's test cleanups for windows > - some avocado test fixes and tweaks > - disabling an sh4 avocado test (possibly a missed recent intermittent regression) > - enabling some sh4 check-tcg tests (now bugs are fixed) > - a minor excursion into the s390 translator > > The following still need review: > > - target/s390x: fake instruction loading when handling 'ex' > - target/s390x: don't probe next pc for EXecuted insns > - target/s390x: don't use ld_code2 to probe next pc > - tests/tcg: re-enable threadcount for sh4 > - tests/tcg: re-enable linux-test for sh4 > - tests/avocado: disable sh4 rd2 tests on Gitlab > - tests/avocado: set -machine none for userfwd and vnc tests > - MAINTAINERS: fix-up for check-tcg Makefile changes > - MAINTAINERS: add features_to_c.sh to gdbstub files > - MAINTAINERS: add entries for the key build bits > - tests/tcg: use regular semihosting for nios2-softmmu > - tests/avocado: extend the timeout for x86_64 tcg tests > - configure: fix the --enable-static --disable-pie case > - configure: don't enable cross compilers unless in target_list > - tests/docker: update fedora-win[32|64]-cross with lcitool > > Alex Bennée (16): > tests/docker: update fedora-win[32|64]-cross with lcitool > tests/docker: update test-mingw to run single build > configure: don't enable cross compilers unless in target_list > configure: fix the --enable-static --disable-pie case > tests/avocado: extend the timeout for x86_64 tcg tests > tests/tcg: use regular semihosting for nios2-softmmu > MAINTAINERS: add entries for the key build bits > MAINTAINERS: add features_to_c.sh to gdbstub files > MAINTAINERS: fix-up for check-tcg Makefile changes > tests/avocado: set -machine none for userfwd and vnc tests > tests/avocado: disable sh4 rd2 tests on Gitlab > tests/tcg: re-enable linux-test for sh4 > tests/tcg: re-enable threadcount for sh4 > target/s390x: don't use ld_code2 to probe next pc > target/s390x: don't probe next pc for EXecuted insns > target/s390x: fake instruction loading when handling 'ex' > > Anton Johansson (2): > tests/docker: Add flex/bison to `debian-all-test` > tests/docker: Add flex/bison to `debian-hexagon-cross` > > Bin Meng (6): > semihosting/arm-compat-semi: Avoid using hardcoded /tmp > tcg: Avoid using hardcoded /tmp > util/qemu-sockets: Use g_get_tmp_dir() to get the directory for > temporary files > block/vvfat: Unify the mkdir() call > fsdev/virtfs-proxy-helper: Use g_mkdir() > hw/usb: dev-mtp: Use g_mkdir() > > Paolo Bonzini (1): > tests/tcg: include CONFIG_PLUGIN in config-host.mak > > Peter Maydell (1): > tests/avocado: raspi2_initrd: Wait for guest shutdown message before > stopping > Will the PR be sent soon? Thanks! Regards, Bin
I've posted an RFC to fix the regression in test-io-command and once that is reviewed I'll push out the pr. On Thu, 27 Oct 2022, 16:06 Bin Meng, <bmeng.cn@gmail.com> wrote: > Hi Alex, > > On Thu, Oct 20, 2022 at 9:53 PM Alex Bennée <alex.bennee@linaro.org> > wrote: > > > > Hi, > > > > The testing/next changes have accumulated a few more fixes since the > > last posting. Including: > > > > - a bunch of Bin Meng's test cleanups for windows > > - some avocado test fixes and tweaks > > - disabling an sh4 avocado test (possibly a missed recent intermittent > regression) > > - enabling some sh4 check-tcg tests (now bugs are fixed) > > - a minor excursion into the s390 translator > > > > The following still need review: > > > > - target/s390x: fake instruction loading when handling 'ex' > > - target/s390x: don't probe next pc for EXecuted insns > > - target/s390x: don't use ld_code2 to probe next pc > > - tests/tcg: re-enable threadcount for sh4 > > - tests/tcg: re-enable linux-test for sh4 > > - tests/avocado: disable sh4 rd2 tests on Gitlab > > - tests/avocado: set -machine none for userfwd and vnc tests > > - MAINTAINERS: fix-up for check-tcg Makefile changes > > - MAINTAINERS: add features_to_c.sh to gdbstub files > > - MAINTAINERS: add entries for the key build bits > > - tests/tcg: use regular semihosting for nios2-softmmu > > - tests/avocado: extend the timeout for x86_64 tcg tests > > - configure: fix the --enable-static --disable-pie case > > - configure: don't enable cross compilers unless in target_list > > - tests/docker: update fedora-win[32|64]-cross with lcitool > > > > Alex Bennée (16): > > tests/docker: update fedora-win[32|64]-cross with lcitool > > tests/docker: update test-mingw to run single build > > configure: don't enable cross compilers unless in target_list > > configure: fix the --enable-static --disable-pie case > > tests/avocado: extend the timeout for x86_64 tcg tests > > tests/tcg: use regular semihosting for nios2-softmmu > > MAINTAINERS: add entries for the key build bits > > MAINTAINERS: add features_to_c.sh to gdbstub files > > MAINTAINERS: fix-up for check-tcg Makefile changes > > tests/avocado: set -machine none for userfwd and vnc tests > > tests/avocado: disable sh4 rd2 tests on Gitlab > > tests/tcg: re-enable linux-test for sh4 > > tests/tcg: re-enable threadcount for sh4 > > target/s390x: don't use ld_code2 to probe next pc > > target/s390x: don't probe next pc for EXecuted insns > > target/s390x: fake instruction loading when handling 'ex' > > > > Anton Johansson (2): > > tests/docker: Add flex/bison to `debian-all-test` > > tests/docker: Add flex/bison to `debian-hexagon-cross` > > > > Bin Meng (6): > > semihosting/arm-compat-semi: Avoid using hardcoded /tmp > > tcg: Avoid using hardcoded /tmp > > util/qemu-sockets: Use g_get_tmp_dir() to get the directory for > > temporary files > > block/vvfat: Unify the mkdir() call > > fsdev/virtfs-proxy-helper: Use g_mkdir() > > hw/usb: dev-mtp: Use g_mkdir() > > > > Paolo Bonzini (1): > > tests/tcg: include CONFIG_PLUGIN in config-host.mak > > > > Peter Maydell (1): > > tests/avocado: raspi2_initrd: Wait for guest shutdown message before > > stopping > > > > Will the PR be sent soon? Thanks! > > Regards, > Bin >