History log of /qemu/linux-user/ (Results 276 – 300 of 3394)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
35be898e30-Jun-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user: Add "safe" parameter to do_guest_openat()

gdbstub cannot meaningfully handle QEMU_ERESTARTSYS, and it doesn't
need to. Add a parameter to do_guest_openat() that makes it use
openat() ins

linux-user: Add "safe" parameter to do_guest_openat()

gdbstub cannot meaningfully handle QEMU_ERESTARTSYS, and it doesn't
need to. Add a parameter to do_guest_openat() that makes it use
openat() instead of safe_openat(), so that it becomes usable from
gdbstub.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230621203627.1808446-3-iii@linux.ibm.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230630180423.558337-33-alex.bennee@linaro.org>

show more ...

a4dab0a030-Jun-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user: Expose do_guest_openat() and do_guest_readlink()

These functions will be required by the GDB stub in order to provide
the guest view of /proc to GDB.

Reviewed-by: Alex Bennée <alex.benn

linux-user: Expose do_guest_openat() and do_guest_readlink()

These functions will be required by the GDB stub in order to provide
the guest view of /proc to GDB.

Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-Id: <20230621203627.1808446-2-iii@linux.ibm.com>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
Message-Id: <20230630180423.558337-32-alex.bennee@linaro.org>

show more ...


/qemu/.gitlab-ci.d/buildtest-template.yml
/qemu/.gitlab-ci.d/buildtest.yml
/qemu/.gitlab-ci.d/crossbuild-template.yml
/qemu/.gitlab-ci.d/crossbuilds.yml
/qemu/.gitlab-ci.d/opensbi.yml
/qemu/MAINTAINERS
/qemu/Makefile
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/user-exec.c
/qemu/contrib/plugins/cache.c
/qemu/contrib/plugins/drcov.c
/qemu/contrib/plugins/execlog.c
/qemu/contrib/plugins/hotblocks.c
/qemu/contrib/plugins/hotpages.c
/qemu/contrib/plugins/howvec.c
/qemu/contrib/plugins/hwprofile.c
/qemu/contrib/plugins/lockstep.c
/qemu/docs/devel/index-api.rst
/qemu/docs/devel/index-process.rst
/qemu/docs/devel/index-tcg.rst
/qemu/docs/devel/index.rst
/qemu/docs/devel/qdev-api.rst
/qemu/docs/devel/qom-api.rst
/qemu/docs/devel/qom.rst
/qemu/docs/devel/tcg.rst
/qemu/docs/devel/testing.rst
/qemu/gdbstub/gdbstub.c
/qemu/gdbstub/softmmu.c
/qemu/include/exec/cpu-all.h
/qemu/include/exec/exec-all.h
/qemu/include/hw/core/cpu.h
/qemu/include/hw/qdev-core.h
/qemu/include/migration/vmstate.h
qemu.h
syscall.c
/qemu/qemu-keymap.c
/qemu/scripts/oss-fuzz/lsan_suppressions.txt
/qemu/target/arm/ptw.c
/qemu/target/arm/tcg/sve_helper.c
/qemu/tests/avocado/boot_linux_console.py
/qemu/tests/avocado/machine_aarch64_sbsaref.py
/qemu/tests/docker/dockerfiles/alpine.docker
/qemu/tests/docker/dockerfiles/debian-amd64-cross.docker
/qemu/tests/docker/dockerfiles/debian-arm64-cross.docker
/qemu/tests/docker/dockerfiles/debian-armel-cross.docker
/qemu/tests/docker/dockerfiles/debian-armhf-cross.docker
/qemu/tests/docker/dockerfiles/debian-mips64el-cross.docker
/qemu/tests/docker/dockerfiles/debian-mipsel-cross.docker
/qemu/tests/docker/dockerfiles/debian-ppc64el-cross.docker
/qemu/tests/docker/dockerfiles/debian-riscv64-cross.docker
/qemu/tests/docker/dockerfiles/debian-s390x-cross.docker
/qemu/tests/docker/dockerfiles/fedora-win32-cross.docker
/qemu/tests/docker/dockerfiles/fedora-win64-cross.docker
/qemu/tests/docker/dockerfiles/fedora.docker
/qemu/tests/docker/test-fuzz
/qemu/tests/lcitool/libvirt-ci
/qemu/tests/lcitool/projects/qemu-minimal.yml
/qemu/tests/lcitool/projects/qemu.yml
/qemu/tests/lcitool/refresh
/qemu/tests/plugin/bb.c
/qemu/tests/plugin/insn.c
/qemu/tests/plugin/mem.c
/qemu/tests/plugin/syscall.c
/qemu/tests/qtest/fuzz/generic_fuzz.c
/qemu/tests/tcg/Makefile.target
/qemu/tests/tcg/aarch64/Makefile.target
605a8b5429-Jun-2023 Richard Henderson <richard.henderson@linaro.org>

linux-user: Avoid mmap of the last byte of the reserved_va

There is an overflow problem in mmap_find_vma_reserved:
when reserved_va == UINT32_MAX, end may overflow to 0.
Rather than a larger rewrite

linux-user: Avoid mmap of the last byte of the reserved_va

There is an overflow problem in mmap_find_vma_reserved:
when reserved_va == UINT32_MAX, end may overflow to 0.
Rather than a larger rewrite at this time, simply avoid
the final byte of the VA, which avoids searching the
final page, which avoids the overflow.

Cc: qemu-stable@nongnu.org
Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1741
Fixes: 95059f9c ("include/exec: Change reserved_va semantics to last byte")
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
Tested-by: Michael Tokarev <mjt@tls.msk.ru>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Message-Id: <20230629080835.71371-1-richard.henderson@linaro.org>

show more ...


/qemu/.gitlab-ci.d/crossbuilds.yml
/qemu/.mailmap
/qemu/MAINTAINERS
/qemu/accel/hvf/hvf-accel-ops.c
/qemu/accel/kvm/kvm-all.c
/qemu/accel/stubs/kvm-stub.c
/qemu/accel/tcg/tb-maint.c
/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/qemu/accel/tcg/tcg-accel-ops-rr.c
/qemu/audio/dbusaudio.c
/qemu/audio/meson.build
/qemu/block.c
/qemu/block/bochs.c
/qemu/block/cloop.c
/qemu/block/dmg.c
/qemu/block/file-posix.c
/qemu/block/graph-lock.c
/qemu/block/io.c
/qemu/block/parallels.c
/qemu/block/qcow.c
/qemu/block/qcow2-bitmap.c
/qemu/block/qcow2-cluster.c
/qemu/block/qcow2-refcount.c
/qemu/block/qcow2.c
/qemu/block/qcow2.h
/qemu/block/qed-check.c
/qemu/block/qed-table.c
/qemu/block/qed.c
/qemu/block/raw-format.c
/qemu/block/vhdx-log.c
/qemu/block/vhdx.c
/qemu/block/vhdx.h
/qemu/block/vmdk.c
/qemu/block/vpc.c
/qemu/blockjob.c
/qemu/chardev/char-win-stdio.c
/qemu/docs/devel/testing.rst
/qemu/docs/devel/vfio-migration.rst
/qemu/docs/system/device-emulation.rst
/qemu/docs/system/devices/keyboard.rst
/qemu/docs/system/devices/nvme.rst
/qemu/docs/system/target-sparc.rst
/qemu/fpu/softfloat-parts.c.inc
/qemu/fpu/softfloat.c
/qemu/hw/arm/sbsa-ref.c
/qemu/hw/arm/virt-acpi-build.c
/qemu/hw/arm/virt.c
/qemu/hw/arm/xen_arm.c
/qemu/hw/char/escc.c
/qemu/hw/core/qdev-properties-system.c
/qemu/hw/display/virtio-gpu-udmabuf.c
/qemu/hw/display/virtio-gpu-virgl.c
/qemu/hw/display/virtio-gpu.c
/qemu/hw/i386/xen/xen-hvm.c
/qemu/hw/intc/arm_gic_common.c
/qemu/hw/intc/arm_gicv3_common.c
/qemu/hw/intc/arm_gicv3_its_common.c
/qemu/hw/net/vhost_net.c
/qemu/hw/nvme/ctrl.c
/qemu/hw/nvme/ns.c
/qemu/hw/nvme/subsys.c
/qemu/hw/ppc/e500.c
/qemu/hw/ppc/ppce500_spin.c
/qemu/hw/remote/proxy-memory-listener.c
/qemu/hw/s390x/s390-pci-vfio.c
/qemu/hw/sparc64/niagara.c
/qemu/hw/vfio/common.c
/qemu/hw/vfio/migration.c
/qemu/hw/vfio/pci-quirks.c
/qemu/hw/vfio/pci.c
/qemu/hw/vfio/trace-events
/qemu/hw/virtio/vhost.c
/qemu/hw/xen/xen-hvm-common.c
/qemu/hw/xen/xen_pt.c
/qemu/include/block/block-io.h
/qemu/include/block/graph-lock.h
/qemu/include/exec/memory.h
/qemu/include/fpu/softfloat.h
/qemu/include/hw/char/escc.h
/qemu/include/hw/core/cpu.h
/qemu/include/hw/intc/arm_gic.h
/qemu/include/hw/intc/arm_gicv3_common.h
/qemu/include/hw/intc/arm_gicv3_its_common.h
/qemu/include/hw/vfio/vfio-common.h
/qemu/include/hw/virtio/virtio-gpu.h
/qemu/include/migration/register.h
/qemu/include/qemu/typedefs.h
/qemu/include/sysemu/hax.h
/qemu/include/sysemu/hvf_int.h
/qemu/include/sysemu/kvm.h
/qemu/include/sysemu/nvmm.h
/qemu/include/sysemu/os-win32.h
/qemu/include/sysemu/tcg.h
/qemu/include/sysemu/whpx.h
/qemu/include/sysemu/xen.h
/qemu/include/tcg/tcg.h
/qemu/include/ui/console.h
/qemu/include/ui/egl-helpers.h
/qemu/include/ui/gtk.h
/qemu/include/ui/sdl2.h
mmap.c
/qemu/meson.build
/qemu/migration/migration.c
/qemu/migration/migration.h
/qemu/migration/options.c
/qemu/migration/options.h
/qemu/migration/savevm.c
/qemu/migration/savevm.h
/qemu/migration/target.c
/qemu/migration/trace-events
/qemu/pc-bios/s390-ccw.img
/qemu/pc-bios/s390-ccw/Makefile
/qemu/pc-bios/s390-ccw/cio.h
/qemu/pc-bios/s390-ccw/helper.h
/qemu/pc-bios/s390-ccw/main.c
/qemu/pc-bios/s390-ccw/netmain.c
/qemu/pc-bios/s390-ccw/s390-ccw.h
/qemu/pc-bios/s390-ccw/start.S
/qemu/pc-bios/s390-ccw/virtio-blkdev.c
/qemu/pc-bios/s390-ccw/virtio-scsi.c
/qemu/pc-bios/s390-ccw/virtio-scsi.h
/qemu/pc-bios/s390-ccw/virtio.c
/qemu/pc-bios/s390-ccw/virtio.h
/qemu/pc-bios/s390-netboot.img
/qemu/qapi/migration.json
/qemu/qapi/ui.json
/qemu/scripts/meson.build
/qemu/scripts/xml-preprocess-test.py
/qemu/scripts/xml-preprocess.py
/qemu/target/alpha/fpu_helper.c
/qemu/target/arm/cpu.h
/qemu/target/arm/hvf/hvf.c
/qemu/target/arm/kvm.c
/qemu/target/arm/kvm_arm.h
/qemu/target/arm/vfp_helper.c
/qemu/target/i386/hax/hax-accel-ops.c
/qemu/target/i386/hax/hax-all.c
/qemu/target/i386/hax/hax-i386.h
/qemu/target/i386/hax/hax-mem.c
/qemu/target/i386/hax/hax-posix.c
/qemu/target/i386/hax/hax-windows.c
/qemu/target/i386/hvf/hvf.c
/qemu/target/i386/hvf/vmx.h
/qemu/target/i386/hvf/x86.c
/qemu/target/i386/hvf/x86_descr.c
/qemu/target/i386/hvf/x86_emu.c
/qemu/target/i386/hvf/x86_mmu.c
/qemu/target/i386/hvf/x86_task.c
/qemu/target/i386/hvf/x86hvf.c
/qemu/target/i386/hvf/x86hvf.h
/qemu/target/i386/nvmm/nvmm-all.c
/qemu/target/i386/whpx/whpx-accel-ops.c
/qemu/target/i386/whpx/whpx-all.c
/qemu/target/i386/whpx/whpx-internal.h
/qemu/target/nios2/translate.c
/qemu/target/ppc/cpu.h
/qemu/target/ppc/mmu_common.c
/qemu/target/riscv/cpu.c
/qemu/target/riscv/cpu.h
/qemu/target/riscv/machine.c
/qemu/target/sparc/translate.c
/qemu/tcg/tcg-op-vec.c
/qemu/tests/qemu-iotests/tests/iothreads-commit-active
/qemu/tests/qemu-iotests/tests/iothreads-commit-active.out
/qemu/tests/qtest/dbus-display-test.c
/qemu/tests/qtest/libqtest.c
/qemu/tests/qtest/libqtest.h
/qemu/tests/qtest/meson.build
/qemu/tests/qtest/migration-test.c
/qemu/tests/tcg/alpha/Makefile.target
/qemu/tests/tcg/alpha/test-cvttq.c
/qemu/tests/tcg/s390x/head64.S
/qemu/tests/unit/test-block-iothread.c
/qemu/ui/console.c
/qemu/ui/dbus-chardev.c
/qemu/ui/dbus-console.c
/qemu/ui/dbus-display1.xml
/qemu/ui/dbus-listener.c
/qemu/ui/dbus.c
/qemu/ui/dbus.h
/qemu/ui/egl-context.c
/qemu/ui/egl-headless.c
/qemu/ui/egl-helpers.c
/qemu/ui/gtk-egl.c
/qemu/ui/gtk-gl-area.c
/qemu/ui/gtk.c
/qemu/ui/meson.build
/qemu/ui/qemu-pixman.c
/qemu/ui/sdl2-gl.c
/qemu/ui/sdl2.c
/qemu/ui/spice-display.c
/qemu/ui/trace-events
/qemu/util/oslib-win32.c
/qemu/util/trace-events
40a205da20-Jun-2023 Paolo Bonzini <pbonzini@redhat.com>

target/i386: emulate 64-bit ring 0 for linux-user if LM feature is set

32-bit binaries can run on a long mode processor even if the kernel
is 64-bit, of course, and this can have slightly different

target/i386: emulate 64-bit ring 0 for linux-user if LM feature is set

32-bit binaries can run on a long mode processor even if the kernel
is 64-bit, of course, and this can have slightly different behavior;
for example, SYSCALL is allowed on Intel processors.

Allow reporting LM to programs running under user mode emulation,
so that "-cpu" can be used with named CPU models even for qemu-i386
and even without disabling LM by hand.

Fortunately, most of the runtime code in QEMU has to depend on HF_LMA_MASK
or on HF_CS64_MASK (which is anyway false for qemu-i386's 32-bit code
segment) rather than TARGET_X86_64, therefore all that is needed is an
update of linux-user's ring 0 setup.

Fixes: https://gitlab.com/qemu-project/qemu/-/issues/1534
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/qemu/.gitlab-ci.d/base.yml
/qemu/.gitlab-ci.d/buildtest-template.yml
/qemu/.gitlab-ci.d/buildtest.yml
/qemu/.gitlab-ci.d/container-template.yml
/qemu/.gitlab-ci.d/crossbuild-template.yml
/qemu/.gitlab-ci.d/static_checks.yml
/qemu/.gitlab-ci.d/windows.yml
/qemu/MAINTAINERS
/qemu/accel/stubs/tcg-stub.c
/qemu/accel/tcg/cpu-exec.c
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/internal.h
/qemu/accel/tcg/monitor.c
/qemu/accel/tcg/tb-hash.h
/qemu/accel/tcg/tb-jmp-cache.h
/qemu/accel/tcg/tb-maint.c
/qemu/accel/tcg/tcg-accel-ops.c
/qemu/accel/tcg/tcg-all.c
/qemu/accel/tcg/translate-all.c
/qemu/accel/tcg/translator.c
/qemu/accel/tcg/user-exec.c
/qemu/backends/cryptodev-vhost-user.c
/qemu/backends/cryptodev.c
/qemu/block/export/vhost-user-blk-server.c
/qemu/configure
/qemu/contrib/vhost-user-blk/vhost-user-blk.c
/qemu/cpu.c
/qemu/docs/devel/ci-jobs.rst.inc
/qemu/docs/devel/loads-stores.rst
/qemu/fpu/softfloat.c
/qemu/hmp-commands-info.hx
/qemu/hw/acpi/core.c
/qemu/hw/block/dataplane/meson.build
/qemu/hw/block/dataplane/virtio-blk.c
/qemu/hw/block/vhost-user-blk.c
/qemu/hw/cxl/cxl-device-utils.c
/qemu/hw/cxl/cxl-events.c
/qemu/hw/cxl/cxl-mailbox-utils.c
/qemu/hw/cxl/meson.build
/qemu/hw/display/vhost-user-gpu.c
/qemu/hw/i386/intel_iommu.c
/qemu/hw/i386/pc.c
/qemu/hw/i386/pc_piix.c
/qemu/hw/i386/pc_q35.c
/qemu/hw/input/vhost-user-input.c
/qemu/hw/intc/pnv_xive.c
/qemu/hw/intc/pnv_xive2.c
/qemu/hw/intc/spapr_xive.c
/qemu/hw/intc/xive.c
/qemu/hw/mem/cxl_type3.c
/qemu/hw/mem/cxl_type3_stubs.c
/qemu/hw/net/vhost_net.c
/qemu/hw/net/virtio-net.c
/qemu/hw/pci-host/pnv_phb4.c
/qemu/hw/pci/pci.c
/qemu/hw/ppc/meson.build
/qemu/hw/ppc/pnv.c
/qemu/hw/ppc/ppc.c
/qemu/hw/ppc/ppc440_bamboo.c
/qemu/hw/ppc/prep.c
/qemu/hw/ppc/spapr.c
/qemu/hw/ppc/spapr_caps.c
/qemu/hw/ppc/spapr_cpu_core.c
/qemu/hw/ppc/spapr_hcall.c
/qemu/hw/ppc/spapr_nested.c
/qemu/hw/s390x/virtio-ccw.c
/qemu/hw/scsi/Kconfig
/qemu/hw/scsi/meson.build
/qemu/hw/scsi/vhost-scsi.c
/qemu/hw/scsi/vhost-user-scsi.c
/qemu/hw/scsi/virtio-scsi-dataplane.c
/qemu/hw/scsi/virtio-scsi.c
/qemu/hw/virtio/Kconfig
/qemu/hw/virtio/meson.build
/qemu/hw/virtio/vdpa-dev.c
/qemu/hw/virtio/vhost-shadow-virtqueue.c
/qemu/hw/virtio/vhost-user.c
/qemu/hw/virtio/vhost-vdpa.c
/qemu/hw/virtio/vhost-vsock-common.c
/qemu/hw/virtio/vhost.c
/qemu/hw/virtio/virtio-crypto.c
/qemu/hw/virtio/virtio-iommu.c
/qemu/hw/virtio/virtio-mem.c
/qemu/hw/virtio/virtio-qmp.c
/qemu/include/exec/cpu-all.h
/qemu/include/exec/cpu-defs.h
/qemu/include/exec/cpu_ldst.h
/qemu/include/exec/exec-all.h
/qemu/include/exec/target_page.h
/qemu/include/exec/translator.h
/qemu/include/hw/core/cpu.h
/qemu/include/hw/cxl/cxl.h
/qemu/include/hw/cxl/cxl_device.h
/qemu/include/hw/cxl/cxl_events.h
/qemu/include/hw/i386/pc.h
/qemu/include/hw/ppc/ppc.h
/qemu/include/hw/ppc/spapr.h
/qemu/include/hw/ppc/spapr_cpu_core.h
/qemu/include/hw/ppc/spapr_nested.h
/qemu/include/hw/ppc/xive.h
/qemu/include/hw/virtio/vhost-backend.h
/qemu/include/hw/virtio/virtio-net.h
/qemu/include/hw/virtio/virtio.h
/qemu/include/qemu/bswap.h
/qemu/include/qemu/plugin-memory.h
/qemu/include/qemu/timer.h
/qemu/include/tcg/tcg.h
i386/cpu_loop.c
/qemu/meson.build
/qemu/meson_options.txt
/qemu/net/vhost-vdpa.c
/qemu/qapi/cxl.json
/qemu/qapi/machine.json
/qemu/scripts/git-submodule.sh
/qemu/scripts/meson-buildoptions.sh
/qemu/softmmu/icount.c
/qemu/softmmu/physmem.c
/qemu/softmmu/runstate.c
/qemu/subprojects/libvhost-user/libvhost-user.c
/qemu/subprojects/libvhost-user/libvhost-user.h
/qemu/target/alpha/cpu.h
/qemu/target/arm/cpu.h
/qemu/target/arm/helper.c
/qemu/target/avr/cpu.h
/qemu/target/cris/cpu.h
/qemu/target/hexagon/cpu.h
/qemu/target/hppa/cpu.h
/qemu/target/i386/cpu.c
/qemu/target/i386/cpu.h
/qemu/target/i386/tcg/translate.c
/qemu/target/loongarch/cpu.h
/qemu/target/m68k/cpu.h
/qemu/target/microblaze/cpu.h
/qemu/target/mips/cpu.h
/qemu/target/nios2/cpu.h
/qemu/target/openrisc/cpu.h
/qemu/target/ppc/cpu.h
/qemu/target/ppc/cpu_init.c
/qemu/target/ppc/excp_helper.c
/qemu/target/ppc/gdbstub.c
/qemu/target/ppc/helper.h
/qemu/target/ppc/helper_regs.c
/qemu/target/ppc/kvm.c
/qemu/target/ppc/misc_helper.c
/qemu/target/ppc/mmu-radix64.c
/qemu/target/ppc/translate.c
/qemu/target/riscv/cpu.h
/qemu/target/riscv/cpu_helper.c
/qemu/target/rx/cpu.h
/qemu/target/s390x/cpu.h
/qemu/target/sh4/cpu.h
/qemu/target/sparc/cpu.h
/qemu/target/tricore/cpu.h
/qemu/target/xtensa/cpu.h
/qemu/tcg/tcg-op-gvec.c
/qemu/tcg/tcg-op-ldst.c
/qemu/tcg/tcg-op.c
/qemu/tcg/tcg.c
/qemu/tests/avocado/ppc_pseries.py
/qemu/tests/data/acpi/q35/SSDT.dimmpxm
/qemu/tests/plugin/insn.c
/qemu/tests/qtest/cxl-test.c
/qemu/tests/qtest/qmp-cmd-test.c
/qemu/tests/qtest/vhost-user-test.c
/qemu/tests/tcg/i386/Makefile.softmmu-target
/qemu/tests/tcg/i386/Makefile.target
/qemu/tests/tcg/x86_64/Makefile.softmmu-target
63fd8ef016-Jun-2023 Paolo Bonzini <pbonzini@redhat.com>

target/i386: implement SYSCALL/SYSRET in 32-bit emulators

AMD supports both 32-bit and 64-bit SYSCALL/SYSRET, but the TCG only
exposes it for 64-bit targets. For system emulation just reuse the
hel

target/i386: implement SYSCALL/SYSRET in 32-bit emulators

AMD supports both 32-bit and 64-bit SYSCALL/SYSRET, but the TCG only
exposes it for 64-bit targets. For system emulation just reuse the
helper; for user-mode emulation the ABI is the same as "int $80".

The BSDs does not support any fast system call mechanism in 32-bit
mode so add to bsd-user the same stub that FreeBSD has for 64-bit
compatibility mode.

Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>

show more ...


/qemu/MAINTAINERS
/qemu/Makefile
/qemu/accel/hvf/hvf-all.c
/qemu/accel/kvm/kvm-all.c
/qemu/accel/meson.build
/qemu/accel/qtest/meson.build
/qemu/accel/stubs/meson.build
/qemu/accel/tcg/cpu-exec.c
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/internal.h
/qemu/accel/tcg/meson.build
/qemu/audio/meson.build
/qemu/backends/hostmem-file.c
/qemu/backends/meson.build
/qemu/backends/tpm/meson.build
/qemu/block/meson.build
/qemu/block/monitor/meson.build
/qemu/bsd-user/i386/target_arch_cpu.h
/qemu/chardev/meson.build
/qemu/configure
/qemu/disas/meson.build
/qemu/disas/riscv.c
/qemu/docs/devel/build-system.rst
/qemu/docs/system/arm/aspeed.rst
/qemu/docs/system/arm/cpu-features.rst
/qemu/docs/system/arm/emulation.rst
/qemu/docs/system/arm/sbsa.rst
/qemu/docs/system/arm/xenpvh.rst
/qemu/docs/system/riscv/virt.rst
/qemu/docs/system/target-arm.rst
/qemu/dump/meson.build
/qemu/ebpf/meson.build
/qemu/fsdev/meson.build
/qemu/gdbstub/meson.build
/qemu/host/include/x86_64/host/atomic128-ldst.h
/qemu/host/include/x86_64/host/load-extract-al16-al8.h
/qemu/hw/9pfs/meson.build
/qemu/hw/acpi/meson.build
/qemu/hw/adc/meson.build
/qemu/hw/arm/Kconfig
/qemu/hw/arm/aspeed.c
/qemu/hw/arm/aspeed_ast2600.c
/qemu/hw/arm/aspeed_eeprom.c
/qemu/hw/arm/aspeed_eeprom.h
/qemu/hw/arm/fby35.c
/qemu/hw/arm/meson.build
/qemu/hw/arm/sbsa-ref.c
/qemu/hw/arm/virt.c
/qemu/hw/arm/xen_arm.c
/qemu/hw/audio/meson.build
/qemu/hw/block/meson.build
/qemu/hw/char/imx_serial.c
/qemu/hw/char/meson.build
/qemu/hw/char/parallel-isa.c
/qemu/hw/char/parallel.c
/qemu/hw/core/machine.c
/qemu/hw/core/meson.build
/qemu/hw/cpu/meson.build
/qemu/hw/cxl/meson.build
/qemu/hw/display/meson.build
/qemu/hw/dma/meson.build
/qemu/hw/gpio/meson.build
/qemu/hw/hppa/machine.c
/qemu/hw/i2c/i2c_mux_pca954x.c
/qemu/hw/i2c/meson.build
/qemu/hw/i386/kvm/meson.build
/qemu/hw/i386/meson.build
/qemu/hw/i386/pc_piix.c
/qemu/hw/i386/pc_q35.c
/qemu/hw/i386/xen/meson.build
/qemu/hw/i386/xen/trace-events
/qemu/hw/i386/xen/xen-hvm.c
/qemu/hw/ide/ahci.c
/qemu/hw/ide/meson.build
/qemu/hw/input/meson.build
/qemu/hw/intc/allwinner-a10-pic.c
/qemu/hw/intc/loongarch_ipi.c
/qemu/hw/intc/meson.build
/qemu/hw/intc/riscv_aplic.c
/qemu/hw/ipack/meson.build
/qemu/hw/ipmi/meson.build
/qemu/hw/isa/isa-superio.c
/qemu/hw/isa/meson.build
/qemu/hw/loongarch/Kconfig
/qemu/hw/loongarch/acpi-build.c
/qemu/hw/loongarch/virt.c
/qemu/hw/m68k/meson.build
/qemu/hw/m68k/q800-glue.c
/qemu/hw/m68k/q800.c
/qemu/hw/mem/meson.build
/qemu/hw/misc/aspeed_hace.c
/qemu/hw/misc/bcm2835_property.c
/qemu/hw/misc/mac_via.c
/qemu/hw/misc/macio/meson.build
/qemu/hw/misc/meson.build
/qemu/hw/net/can/meson.build
/qemu/hw/net/dp8393x.c
/qemu/hw/net/meson.build
/qemu/hw/nubus/meson.build
/qemu/hw/nvme/meson.build
/qemu/hw/nvram/meson.build
/qemu/hw/pci-bridge/meson.build
/qemu/hw/pci-host/meson.build
/qemu/hw/pci/meson.build
/qemu/hw/pcmcia/meson.build
/qemu/hw/rdma/meson.build
/qemu/hw/remote/meson.build
/qemu/hw/remote/proxy.c
/qemu/hw/riscv/numa.c
/qemu/hw/riscv/opentitan.c
/qemu/hw/riscv/spike.c
/qemu/hw/riscv/virt.c
/qemu/hw/rtc/meson.build
/qemu/hw/scsi/megasas.c
/qemu/hw/scsi/meson.build
/qemu/hw/sd/allwinner-sdhost.c
/qemu/hw/sd/meson.build
/qemu/hw/sensor/meson.build
/qemu/hw/smbios/meson.build
/qemu/hw/sparc64/sun4u.c
/qemu/hw/ssi/meson.build
/qemu/hw/timer/meson.build
/qemu/hw/timer/nrf51_timer.c
/qemu/hw/tpm/meson.build
/qemu/hw/usb/meson.build
/qemu/hw/vfio/common.c
/qemu/hw/vfio/trace-events
/qemu/hw/virtio/meson.build
/qemu/hw/watchdog/meson.build
/qemu/hw/xen/meson.build
/qemu/hw/xen/trace-events
/qemu/hw/xen/xen-hvm-common.c
/qemu/hw/xen/xen-mapcache.c
/qemu/include/disas/dis-asm.h
/qemu/include/exec/cpu-common.h
/qemu/include/exec/cpu-defs.h
/qemu/include/exec/memattrs.h
/qemu/include/exec/memory.h
/qemu/include/exec/ram_addr.h
/qemu/include/hw/arm/raspi_platform.h
/qemu/include/hw/arm/xen_arch_hvm.h
/qemu/include/hw/boards.h
/qemu/include/hw/char/imx_serial.h
/qemu/include/hw/char/parallel-isa.h
/qemu/include/hw/char/parallel.h
/qemu/include/hw/core/cpu.h
/qemu/include/hw/core/tcg-cpu-ops.h
/qemu/include/hw/i386/xen_arch_hvm.h
/qemu/include/hw/m68k/q800-glue.h
/qemu/include/hw/m68k/q800.h
/qemu/include/hw/misc/raspberrypi-fw-defs.h
/qemu/include/hw/net/dp8393x.h
/qemu/include/hw/riscv/opentitan.h
/qemu/include/hw/xen/arch_hvm.h
/qemu/include/hw/xen/xen-hvm-common.h
/qemu/include/hw/xen/xen_native.h
/qemu/include/qemu/compiler.h
/qemu/include/qemu/host-utils.h
/qemu/include/qemu/log.h
i386/cpu_loop.c
/qemu/meson.build
/qemu/migration/meson.build
/qemu/migration/ram.c
/qemu/monitor/meson.build
/qemu/net/can/meson.build
/qemu/net/meson.build
/qemu/net/vmnet-bridged.m
/qemu/pc-bios/hppa-firmware.img
/qemu/pc-bios/keymaps/meson.build
/qemu/plugins/core.c
/qemu/qapi/meson.build
/qemu/qapi/migration.json
/qemu/qom/meson.build
/qemu/replay/meson.build
/qemu/roms/seabios-hppa
/qemu/semihosting/meson.build
/qemu/softmmu/meson.build
/qemu/softmmu/physmem.c
/qemu/stats/meson.build
/qemu/target/alpha/meson.build
/qemu/target/arm/cpu.c
/qemu/target/arm/cpu.h
/qemu/target/arm/helper.c
/qemu/target/arm/hvf/meson.build
/qemu/target/arm/internals.h
/qemu/target/arm/meson.build
/qemu/target/arm/ptw.c
/qemu/target/arm/syndrome.h
/qemu/target/arm/tcg/a64.decode
/qemu/target/arm/tcg/cpu64.c
/qemu/target/arm/tcg/meson.build
/qemu/target/arm/tcg/tlb_helper.c
/qemu/target/arm/tcg/translate-a64.c
/qemu/target/arm/tcg/translate-sve.c
/qemu/target/avr/meson.build
/qemu/target/cris/meson.build
/qemu/target/hppa/int_helper.c
/qemu/target/hppa/meson.build
/qemu/target/i386/cpu.c
/qemu/target/i386/cpu.h
/qemu/target/i386/hax/meson.build
/qemu/target/i386/helper.c
/qemu/target/i386/helper.h
/qemu/target/i386/hvf/meson.build
/qemu/target/i386/kvm/meson.build
/qemu/target/i386/meson.build
/qemu/target/i386/nvmm/meson.build
/qemu/target/i386/tcg/cc_helper.c
/qemu/target/i386/tcg/cc_helper_template.h.inc
/qemu/target/i386/tcg/int_helper.c
/qemu/target/i386/tcg/misc_helper.c
/qemu/target/i386/tcg/ops_sse_header.h.inc
/qemu/target/i386/tcg/seg_helper.c
/qemu/target/i386/tcg/shift_helper_template.h.inc
/qemu/target/i386/tcg/sysemu/meson.build
/qemu/target/i386/tcg/sysemu/seg_helper.c
/qemu/target/i386/tcg/translate.c
/qemu/target/i386/tcg/user/seg_helper.c
/qemu/target/i386/whpx/meson.build
/qemu/target/loongarch/cpu.h
/qemu/target/loongarch/meson.build
/qemu/target/loongarch/tlb_helper.c
/qemu/target/m68k/cpu.c
/qemu/target/m68k/helper.c
/qemu/target/m68k/helper.h
/qemu/target/m68k/meson.build
/qemu/target/m68k/translate.c
/qemu/target/microblaze/meson.build
/qemu/target/mips/meson.build
/qemu/target/mips/sysemu/meson.build
/qemu/target/mips/tcg/sysemu/meson.build
/qemu/target/nios2/meson.build
/qemu/target/openrisc/meson.build
/qemu/target/ppc/cpu_init.c
/qemu/target/ppc/helper_regs.c
/qemu/target/ppc/meson.build
/qemu/target/riscv/cpu.c
/qemu/target/riscv/cpu.h
/qemu/target/riscv/cpu_cfg.h
/qemu/target/riscv/cpu_helper.c
/qemu/target/riscv/csr.c
/qemu/target/riscv/insn_trans/trans_privileged.c.inc
/qemu/target/riscv/insn_trans/trans_rvd.c.inc
/qemu/target/riscv/insn_trans/trans_rvf.c.inc
/qemu/target/riscv/insn_trans/trans_rvi.c.inc
/qemu/target/riscv/insn_trans/trans_rvv.c.inc
/qemu/target/riscv/insn_trans/trans_rvzawrs.c.inc
/qemu/target/riscv/insn_trans/trans_rvzce.c.inc
/qemu/target/riscv/insn_trans/trans_xthead.c.inc
/qemu/target/riscv/meson.build
/qemu/target/riscv/pmp.c
/qemu/target/riscv/pmp.h
/qemu/target/riscv/translate.c
/qemu/target/riscv/vector_helper.c
/qemu/target/s390x/kvm/meson.build
/qemu/target/s390x/meson.build
/qemu/target/sh4/meson.build
/qemu/target/sparc/meson.build
/qemu/target/tricore/cpu.c
/qemu/target/tricore/cpu.h
/qemu/target/tricore/helper.c
/qemu/target/tricore/helper.h
/qemu/target/tricore/meson.build
/qemu/target/tricore/op_helper.c
/qemu/target/tricore/translate.c
/qemu/target/tricore/tricore-opcodes.h
/qemu/target/xtensa/meson.build
/qemu/tcg/meson.build
/qemu/tcg/ppc/tcg-target.c.inc
/qemu/tests/qtest/libqtest.c
/qemu/trace/meson.build
/qemu/ui/cocoa.m
/qemu/ui/meson.build
/qemu/util/cacheflush.c
/qemu/util/log.c
7f750efc29-Mar-2023 Andreas Schwab <schwab@suse.de>

linux-user, bsd-user: Preserve incoming order of environment variables in the target

Do not reverse the order of environment variables in the target environ
array relative to the incoming environ or

linux-user, bsd-user: Preserve incoming order of environment variables in the target

Do not reverse the order of environment variables in the target environ
array relative to the incoming environ order. Some testsuites depend on a
specific order, even though it is not defined by any standard.

Signed-off-by: Andreas Schwab <schwab@suse.de>
Reviewed-by: Warner Losh <imp@bsdimp.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <mvmlejfsivd.fsf@suse.de>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>

show more ...

e928907127-Mar-2023 Andrew Jeffery <andrew@aj.id.au>

linux-user: elfload: Specify -R is an option for qemu-user binaries

Given several different concepts are suggested for investigation, let's
not confuse e.g. ulimit's -R with what was actually intend

linux-user: elfload: Specify -R is an option for qemu-user binaries

Given several different concepts are suggested for investigation, let's
not confuse e.g. ulimit's -R with what was actually intended.

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>

show more ...

f101c25c27-Mar-2023 Andrew Jeffery <andrew@aj.id.au>

linux-user: elfload: s/min_mmap_addr/mmap_min_addr/

As-is the error message can cause some confusion as the mentioned sysctl
attribute name is wrong:

https://www.kernel.org/doc/html/latest/admin-gu

linux-user: elfload: s/min_mmap_addr/mmap_min_addr/

As-is the error message can cause some confusion as the mentioned sysctl
attribute name is wrong:

https://www.kernel.org/doc/html/latest/admin-guide/sysctl/vm.html#mmap-min-addr

Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>

show more ...

8fbf89a909-Jun-2023 Peter Maydell <peter.maydell@linaro.org>

linux-user: Return EINVAL for getgroups() with negative gidsetsize

Coverity doesn't like the way we might end up calling getgroups()
with a NULL grouplist pointer. This is fine for the special case

linux-user: Return EINVAL for getgroups() with negative gidsetsize

Coverity doesn't like the way we might end up calling getgroups()
with a NULL grouplist pointer. This is fine for the special case
of gidsetsize == 0, but we will also do it if the guest passes
us a negative gidsetsize. (CID 1512465)

Explicitly fail the negative gidsetsize with EINVAL, as the kernel
does. This means we definitely only call the libc getgroups()
with valid parameters. It also brings the getgroups() code in
to line with the setgroups() code.

Possibly Coverity may still complain about getgroups(0, NULL), but
that would be a false positive.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Michael Tokarev <mjt@tls.msk.ru>
Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>

show more ...

725160fe03-Jun-2023 Michael Tokarev <mjt@tls.msk.ru>

linux-user: add comments for TARGET_NR_[gs]etgroups{,32}

There are 2 pairs of identical code (with different types)
for TARGET_NR_setgroups & TARGET_NR_setgroups32, and
for TARGET_NR_getgroups & TAR

linux-user: add comments for TARGET_NR_[gs]etgroups{,32}

There are 2 pairs of identical code (with different types)
for TARGET_NR_setgroups & TARGET_NR_setgroups32, and
for TARGET_NR_getgroups & TARGET_NR_getgroups32. Add
comments stating this fact, so that further modifications
are done in two places.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>

show more ...


/qemu/.gitignore
/qemu/.gitlab-ci.d/buildtest-template.yml
/qemu/.gitlab-ci.d/buildtest.yml
/qemu/.gitlab-ci.d/crossbuilds.yml
/qemu/.gitmodules
/qemu/MAINTAINERS
/qemu/Makefile
/qemu/accel/hvf/hvf-accel-ops.c
/qemu/accel/hvf/hvf-all.c
/qemu/accel/tcg/cpu-exec.c
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/ldst_atomicity.c.inc
/qemu/accel/tcg/monitor.c
/qemu/accel/tcg/perf.c
/qemu/accel/tcg/plugin-gen.c
/qemu/accel/tcg/tcg-accel-ops-mttcg.c
/qemu/accel/tcg/tcg-accel-ops-rr.c
/qemu/accel/tcg/tcg-all.c
/qemu/accel/tcg/tcg-runtime-gvec.c
/qemu/accel/tcg/tcg-runtime.c
/qemu/accel/tcg/translate-all.c
/qemu/accel/tcg/translator.c
/qemu/block.c
/qemu/block/io.c
/qemu/block/parallels.c
/qemu/block/qcow2-cluster.c
/qemu/block/qcow2.c
/qemu/block/qcow2.h
/qemu/configure
/qemu/docs/devel/acpi-bits.rst
/qemu/docs/devel/atomics.rst
/qemu/docs/devel/testing.rst
/qemu/docs/system/arm/bananapi_m2u.rst
/qemu/docs/system/arm/emulation.rst
/qemu/docs/system/arm/xlnx-versal-virt.rst
/qemu/docs/system/devices/vhost-user.rst
/qemu/docs/system/multi-process.rst
/qemu/docs/system/target-arm.rst
/qemu/fsdev/virtfs-proxy-helper.c
/qemu/hw/9pfs/9p-util.h
/qemu/hw/arm/Kconfig
/qemu/hw/arm/allwinner-r40.c
/qemu/hw/arm/bananapi_m2u.c
/qemu/hw/arm/meson.build
/qemu/hw/arm/xlnx-versal-virt.c
/qemu/hw/arm/xlnx-versal.c
/qemu/hw/char/omap_uart.c
/qemu/hw/core/cpu-common.c
/qemu/hw/i386/kvm/i8254.c
/qemu/hw/i386/kvm/xen_evtchn.c
/qemu/hw/i386/kvm/xen_evtchn.h
/qemu/hw/i386/kvm/xen_xenstore.c
/qemu/hw/i386/microvm.c
/qemu/hw/i386/pc.c
/qemu/hw/i386/pc_piix.c
/qemu/hw/i386/xen/xen-hvm.c
/qemu/hw/intc/loongarch_ipi.c
/qemu/hw/isa/i82378.c
/qemu/hw/isa/piix3.c
/qemu/hw/misc/Kconfig
/qemu/hw/misc/allwinner-r40-ccu.c
/qemu/hw/misc/allwinner-r40-dramc.c
/qemu/hw/misc/allwinner-sramc.c
/qemu/hw/misc/axp2xx.c
/qemu/hw/misc/meson.build
/qemu/hw/misc/trace-events
/qemu/hw/net/can/meson.build
/qemu/hw/net/can/trace-events
/qemu/hw/net/can/xlnx-versal-canfd.c
/qemu/hw/pci/pci.c
/qemu/hw/remote/trace-events
/qemu/hw/remote/vfio-user-obj.c
/qemu/hw/sd/allwinner-sdhost.c
/qemu/hw/timer/i8254.c
/qemu/hw/timer/i8254_common.c
/qemu/hw/usb/hcd-ehci-pci.c
/qemu/hw/virtio/virtio-qmp.c
/qemu/hw/xen/xen-bus.c
/qemu/hw/xen/xen-operations.c
/qemu/include/exec/cpu-all.h
/qemu/include/exec/cpu-defs.h
/qemu/include/exec/cpu_ldst.h
/qemu/include/exec/exec-all.h
/qemu/include/exec/helper-gen-common.h
/qemu/include/exec/helper-gen.h
/qemu/include/exec/helper-gen.h.inc
/qemu/include/exec/helper-head.h
/qemu/include/exec/helper-info.c.inc
/qemu/include/exec/helper-proto-common.h
/qemu/include/exec/helper-proto.h
/qemu/include/exec/helper-proto.h.inc
/qemu/include/exec/plugin-gen.h
/qemu/include/exec/poison.h
/qemu/include/exec/tlb-common.h
/qemu/include/exec/translation-block.h
/qemu/include/exec/translator.h
/qemu/include/hw/arm/allwinner-r40.h
/qemu/include/hw/arm/omap.h
/qemu/include/hw/arm/xlnx-versal.h
/qemu/include/hw/intc/loongarch_ipi.h
/qemu/include/hw/misc/allwinner-r40-ccu.h
/qemu/include/hw/misc/allwinner-r40-dramc.h
/qemu/include/hw/misc/allwinner-sramc.h
/qemu/include/hw/net/xlnx-versal-canfd.h
/qemu/include/hw/sd/allwinner-sdhost.h
/qemu/include/hw/southbridge/piix.h
/qemu/include/hw/xen/xen.h
/qemu/include/hw/xen/xen_native.h
/qemu/include/qemu/atomic.h
/qemu/include/qemu/iov.h
/qemu/include/qemu/typedefs.h
/qemu/include/sysemu/hvf.h
/qemu/include/sysemu/hvf_int.h
/qemu/include/tcg/helper-info.h
/qemu/include/tcg/insn-start-words.h
/qemu/include/tcg/oversized-guest.h
/qemu/include/tcg/tcg-op-common.h
/qemu/include/tcg/tcg-op-gvec-common.h
/qemu/include/tcg/tcg-op-gvec.h
/qemu/include/tcg/tcg-op.h
/qemu/include/tcg/tcg-opc.h
/qemu/include/tcg/tcg.h
/qemu/include/ui/clipboard.h
syscall.c
/qemu/meson.build
/qemu/monitor/qmp.c
/qemu/pc-bios/keymaps/meson.build
/qemu/pc-bios/s390-ccw/Makefile
/qemu/python/scripts/mkvenv.py
/qemu/qapi/block-core.json
/qemu/qapi/cryptodev.json
/qemu/qemu-options.hx
/qemu/qga/qapi-schema.json
/qemu/scripts/archive-source.sh
/qemu/scripts/ci/org.centos/stream/8/x86_64/configure
/qemu/scripts/ci/org.centos/stream/8/x86_64/test-avocado
/qemu/scripts/device-crash-test
/qemu/scripts/git-submodule.sh
/qemu/scripts/make-config-poison.sh
/qemu/scripts/make-release
/qemu/scripts/xen-detect.c
/qemu/scsi/qemu-pr-helper.c
/qemu/softmmu/cpus.c
/qemu/softmmu/physmem.c
/qemu/stubs/xen-hw-stub.c
/qemu/subprojects/.gitignore
/qemu/subprojects/berkeley-softfloat-3.wrap
/qemu/subprojects/berkeley-testfloat-3.wrap
/qemu/subprojects/dtc.wrap
/qemu/subprojects/keycodemapdb.wrap
/qemu/subprojects/libvfio-user.wrap
/qemu/subprojects/packagefiles/berkeley-softfloat-3/meson.build
/qemu/subprojects/packagefiles/berkeley-softfloat-3/meson_options.txt
/qemu/subprojects/packagefiles/berkeley-testfloat-3/meson.build
/qemu/subprojects/packagefiles/berkeley-testfloat-3/meson_options.txt
/qemu/target/alpha/translate.c
/qemu/target/arm/cpregs.h
/qemu/target/arm/cpu.c
/qemu/target/arm/cpu.h
/qemu/target/arm/debug_helper.c
/qemu/target/arm/helper.c
/qemu/target/arm/hvf/hvf.c
/qemu/target/arm/hvf_arm.h
/qemu/target/arm/hyp_gdbstub.c
/qemu/target/arm/internals.h
/qemu/target/arm/kvm64.c
/qemu/target/arm/meson.build
/qemu/target/arm/ptw.c
/qemu/target/arm/tcg/cpu64.c
/qemu/target/arm/tcg/helper-a64.c
/qemu/target/arm/tcg/helper-a64.h
/qemu/target/arm/tcg/hflags.c
/qemu/target/arm/tcg/mte_helper.c
/qemu/target/arm/tcg/translate-a64.c
/qemu/target/arm/tcg/translate-a64.h
/qemu/target/arm/tcg/translate-m-nocp.c
/qemu/target/arm/tcg/translate-mve.c
/qemu/target/arm/tcg/translate-neon.c
/qemu/target/arm/tcg/translate-sme.c
/qemu/target/arm/tcg/translate-sve.c
/qemu/target/arm/tcg/translate-vfp.c
/qemu/target/arm/tcg/translate.c
/qemu/target/arm/tcg/translate.h
/qemu/target/avr/cpu.c
/qemu/target/avr/helper.c
/qemu/target/avr/translate.c
/qemu/target/cris/translate.c
/qemu/target/hexagon/genptr.c
/qemu/target/hexagon/idef-parser/idef-parser.y
/qemu/target/hexagon/translate.c
/qemu/target/hppa/translate.c
/qemu/target/i386/helper.c
/qemu/target/i386/hvf/hvf.c
/qemu/target/i386/tcg/translate.c
/qemu/target/loongarch/insn_trans/trans_extra.c.inc
/qemu/target/loongarch/insn_trans/trans_privileged.c.inc
/qemu/target/loongarch/translate.c
/qemu/target/m68k/fpu_helper.c
/qemu/target/m68k/translate.c
/qemu/target/microblaze/translate.c
/qemu/target/mips/tcg/msa_translate.c
/qemu/target/mips/tcg/mxu_translate.c
/qemu/target/mips/tcg/octeon_translate.c
/qemu/target/mips/tcg/rel6_translate.c
/qemu/target/mips/tcg/translate.c
/qemu/target/mips/tcg/translate.h
/qemu/target/mips/tcg/translate_addr_const.c
/qemu/target/mips/tcg/tx79_translate.c
/qemu/target/mips/tcg/vr54xx_translate.c
/qemu/target/nios2/translate.c
/qemu/target/openrisc/sys_helper.c
/qemu/target/openrisc/translate.c
/qemu/target/ppc/cpu.h
/qemu/target/ppc/power8-pmu-regs.c.inc
/qemu/target/ppc/translate.c
/qemu/target/ppc/translate/branch-impl.c.inc
/qemu/target/riscv/cpu_helper.c
/qemu/target/riscv/insn_trans/trans_privileged.c.inc
/qemu/target/riscv/insn_trans/trans_rvi.c.inc
/qemu/target/riscv/translate.c
/qemu/target/rx/cpu.c
/qemu/target/rx/op_helper.c
/qemu/target/rx/translate.c
/qemu/target/s390x/tcg/translate.c
/qemu/target/sh4/translate.c
/qemu/target/sparc/cpu.h
/qemu/target/sparc/translate.c
/qemu/target/tricore/cpu.c
/qemu/target/tricore/cpu.h
/qemu/target/tricore/helper.c
/qemu/target/tricore/op_helper.c
/qemu/target/tricore/translate.c
/qemu/target/xtensa/translate.c
/qemu/tcg/aarch64/tcg-target-reg-bits.h
/qemu/tcg/aarch64/tcg-target.c.inc
/qemu/tcg/arm/tcg-target-reg-bits.h
/qemu/tcg/arm/tcg-target.c.inc
/qemu/tcg/i386/tcg-target-reg-bits.h
/qemu/tcg/i386/tcg-target.c.inc
/qemu/tcg/i386/tcg-target.h
/qemu/tcg/loongarch64/tcg-target-reg-bits.h
/qemu/tcg/loongarch64/tcg-target.c.inc
/qemu/tcg/loongarch64/tcg-target.h
/qemu/tcg/meson.build
/qemu/tcg/mips/tcg-target-reg-bits.h
/qemu/tcg/mips/tcg-target.c.inc
/qemu/tcg/mips/tcg-target.h
/qemu/tcg/optimize.c
/qemu/tcg/ppc/tcg-target-reg-bits.h
/qemu/tcg/ppc/tcg-target.c.inc
/qemu/tcg/ppc/tcg-target.h
/qemu/tcg/region.c
/qemu/tcg/riscv/tcg-target-reg-bits.h
/qemu/tcg/riscv/tcg-target.c.inc
/qemu/tcg/riscv/tcg-target.h
/qemu/tcg/s390x/tcg-target-reg-bits.h
/qemu/tcg/s390x/tcg-target.c.inc
/qemu/tcg/sparc64/tcg-target-reg-bits.h
/qemu/tcg/sparc64/tcg-target.c.inc
/qemu/tcg/tcg-internal.h
/qemu/tcg/tcg-op-gvec.c
/qemu/tcg/tcg-op-ldst.c
/qemu/tcg/tcg-op-vec.c
/qemu/tcg/tcg-op.c
/qemu/tcg/tcg.c
/qemu/tcg/tci.c
/qemu/tcg/tci/tcg-target-reg-bits.h
/qemu/tcg/tci/tcg-target.c.inc
/qemu/tcg/tci/tcg-target.h
/qemu/tests/Makefile.include
/qemu/tests/avocado/boot_linux_console.py
/qemu/tests/fp/meson.build
/qemu/tests/qemu-iotests/194
/qemu/tests/qemu-iotests/194.out
/qemu/tests/qemu-iotests/tests/iov-padding
/qemu/tests/qemu-iotests/tests/iov-padding.out
/qemu/tests/qtest/meson.build
/qemu/tests/qtest/xlnx-canfd-test.c
/qemu/tests/requirements.txt
/qemu/tests/tcg/aarch64/Makefile.target
/qemu/tests/tcg/aarch64/dcpodp.c
/qemu/tests/tcg/aarch64/dcpop.c
/qemu/tests/tcg/aarch64/mte-7.c
/qemu/tests/tcg/multiarch/sigbus.c
/qemu/tests/tcg/tricore/Makefile.softmmu-target
/qemu/tests/tcg/tricore/asm/macros.h
/qemu/tests/tcg/tricore/asm/test_abs.S
/qemu/tests/tcg/tricore/asm/test_bmerge.S
/qemu/tests/tcg/tricore/asm/test_clz.S
/qemu/tests/tcg/tricore/asm/test_dextr.S
/qemu/tests/tcg/tricore/asm/test_dvstep.S
/qemu/tests/tcg/tricore/asm/test_fadd.S
/qemu/tests/tcg/tricore/asm/test_fmul.S
/qemu/tests/tcg/tricore/asm/test_ftoi.S
/qemu/tests/tcg/tricore/asm/test_imask.S
/qemu/tests/tcg/tricore/asm/test_insert.S
/qemu/tests/tcg/tricore/asm/test_ld_bu.S
/qemu/tests/tcg/tricore/asm/test_ld_h.S
/qemu/tests/tcg/tricore/asm/test_madd.S
/qemu/tests/tcg/tricore/asm/test_msub.S
/qemu/tests/tcg/tricore/asm/test_muls.S
/qemu/tests/tcg/tricore/c/crt0-tc2x.S
/qemu/tests/tcg/tricore/c/test_boot_to_main.c
/qemu/tests/tcg/tricore/c/test_context_save_areas.c
/qemu/tests/tcg/tricore/c/testdev_assert.h
/qemu/tests/tcg/tricore/link.ld
/qemu/tests/unit/test-aio-multithread.c
/qemu/tests/vm/Makefile.include
/qemu/util/iov.c
/qemu/util/qemu-coroutine-lock.c
1fb9bdaf05-Jun-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user: Emulate /proc/cpuinfo on s390x

Some s390x userspace programs are confused when seeing a foreign
/proc/cpuinfo [1]. Add the emulation for s390x; follow the respective
kernel code structur

linux-user: Emulate /proc/cpuinfo on s390x

Some s390x userspace programs are confused when seeing a foreign
/proc/cpuinfo [1]. Add the emulation for s390x; follow the respective
kernel code structure where possible.

Output example:

vendor_id : IBM/S390
# processors : 12
bogomips per cpu: 13370.00
max thread id : 0
features : esan3 zarch stfle msa
facilities : 0 1 2 3 4 7 9 16 17 18 19 21 22 24 25 27 30 31 32 33 34 35 37 40 41 45 49 51 52 53 57 58 61 69 71 72 75 76 77 129 130 131 135 138 146 148
processor 0: version = 00, identification = 000000, machine = 8561
processor 1: version = 00, identification = 100000, machine = 8561
[...]

cpu number : 0
version : 00
identification : 000000
machine : 8561

cpu number : 1
version : 00
identification : 100000
machine : 8561
[...]

[1] https://bugzilla.redhat.com/show_bug.cgi?id=2211472

Reported-by: Tulio Magno Quites Machado Filho <tuliom@redhat.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230605113950.1169228-5-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>

show more ...

e19807be05-Jun-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user/elfload: Introduce elf_hwcap_str() on s390x

It is required for implementing /proc/cpuinfo emulation.

Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <ii

linux-user/elfload: Introduce elf_hwcap_str() on s390x

It is required for implementing /proc/cpuinfo emulation.

Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230605113950.1169228-4-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>

show more ...

e1b819c805-Jun-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user/elfload: Expose get_elf_hwcap() on s390x

It is required for implementing /proc/cpuinfo emulation.

Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@l

linux-user/elfload: Expose get_elf_hwcap() on s390x

It is required for implementing /proc/cpuinfo emulation.

Reviewed-by: David Hildenbrand <david@redhat.com>
Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230605113950.1169228-3-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>

show more ...

01b9990a10-May-2023 Ilya Leoshkevich <iii@linux.ibm.com>

linux-user/s390x: Fix single-stepping SVC

Currently single-stepping SVC executes two instructions. The reason is
that EXCP_DEBUG for the SVC instruction itself is masked by EXCP_SVC.
Fix by re-raisi

linux-user/s390x: Fix single-stepping SVC

Currently single-stepping SVC executes two instructions. The reason is
that EXCP_DEBUG for the SVC instruction itself is masked by EXCP_SVC.
Fix by re-raising EXCP_DEBUG.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Message-Id: <20230510230213.330134-2-iii@linux.ibm.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>

show more ...


/qemu/.gitlab-ci.d/buildtest-template.yml
/qemu/.gitlab-ci.d/buildtest.yml
/qemu/.gitlab-ci.d/container-template.yml
/qemu/.gitlab-ci.d/custom-runners.yml
/qemu/.gitlab-ci.d/opensbi.yml
/qemu/.gitlab-ci.d/qemu-project.yml
/qemu/.gitmodules
/qemu/.mailmap
/qemu/MAINTAINERS
/qemu/Makefile
/qemu/accel/tcg/atomic_common.c.inc
/qemu/accel/tcg/atomic_template.h
/qemu/accel/tcg/cpu-exec.c
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/ldst_atomicity.c.inc
/qemu/accel/tcg/ldst_common.c.inc
/qemu/accel/tcg/tb-hash.h
/qemu/accel/tcg/tb-maint.c
/qemu/accel/tcg/tcg-runtime.h
/qemu/accel/tcg/translate-all.c
/qemu/accel/tcg/translator.c
/qemu/accel/tcg/user-exec.c
/qemu/audio/audio_legacy.c
/qemu/backends/hostmem-file.c
/qemu/block.c
/qemu/block/blkio.c
/qemu/block/block-backend.c
/qemu/block/commit.c
/qemu/block/copy-before-write.c
/qemu/block/create.c
/qemu/block/crypto.c
/qemu/block/curl.c
/qemu/block/export/export.c
/qemu/block/export/fuse.c
/qemu/block/export/vduse-blk.c
/qemu/block/export/vhost-user-blk-server.c
/qemu/block/file-posix.c
/qemu/block/gluster.c
/qemu/block/graph-lock.c
/qemu/block/io.c
/qemu/block/io_uring.c
/qemu/block/iscsi.c
/qemu/block/linux-aio.c
/qemu/block/meson.build
/qemu/block/mirror.c
/qemu/block/nfs.c
/qemu/block/nvme.c
/qemu/block/parallels.c
/qemu/block/plug.c
/qemu/block/qapi-sysemu.c
/qemu/block/qcow.c
/qemu/block/qcow2.c
/qemu/block/qed.c
/qemu/block/raw-format.c
/qemu/block/ssh.c
/qemu/block/stream.c
/qemu/block/trace-events
/qemu/block/vdi.c
/qemu/block/vhdx.c
/qemu/block/vmdk.c
/qemu/block/vpc.c
/qemu/block/win32-aio.c
/qemu/blockdev.c
/qemu/blockjob.c
/qemu/bsd-user/freebsd/os-syscall.c
/qemu/configs/devices/aarch64-softmmu/default.mak
/qemu/configs/devices/arm-softmmu/default.mak
/qemu/configure
/qemu/contrib/ivshmem-server/main.c
/qemu/disas/riscv.c
/qemu/docs/about/deprecated.rst
/qemu/docs/conf.py
/qemu/docs/devel/decodetree.rst
/qemu/docs/devel/qapi-code-gen.rst
/qemu/docs/interop/index.rst
/qemu/docs/interop/qcow2.txt
/qemu/docs/interop/qmp-spec.rst
/qemu/docs/system/arm/sbsa.rst
/qemu/docs/system/devices/cxl.rst
/qemu/docs/system/devices/igb.rst
/qemu/host/include/aarch64/host/atomic128-cas.h
/qemu/host/include/aarch64/host/atomic128-ldst.h
/qemu/host/include/aarch64/host/cpuinfo.h
/qemu/host/include/aarch64/host/load-extract-al16-al8.h
/qemu/host/include/aarch64/host/store-insert-al16.h
/qemu/host/include/generic/host/atomic128-cas.h
/qemu/host/include/generic/host/atomic128-ldst.h
/qemu/host/include/generic/host/cpuinfo.h
/qemu/host/include/generic/host/load-extract-al16-al8.h
/qemu/host/include/generic/host/store-insert-al16.h
/qemu/host/include/i386/host/cpuinfo.h
/qemu/host/include/x86_64/host/atomic128-ldst.h
/qemu/host/include/x86_64/host/cpuinfo.h
/qemu/host/include/x86_64/host/load-extract-al16-al8.h
/qemu/hw/9pfs/9p.c
/qemu/hw/alpha/dp264.c
/qemu/hw/arm/Kconfig
/qemu/hw/arm/fsl-imx6.c
/qemu/hw/arm/sbsa-ref.c
/qemu/hw/arm/smmu-common.c
/qemu/hw/arm/smmu-internal.h
/qemu/hw/arm/smmuv3-internal.h
/qemu/hw/arm/smmuv3.c
/qemu/hw/arm/trace-events
/qemu/hw/arm/virt.c
/qemu/hw/arm/xlnx-zynqmp.c
/qemu/hw/block/dataplane/virtio-blk.c
/qemu/hw/block/dataplane/xen-block.c
/qemu/hw/block/dataplane/xen-block.h
/qemu/hw/block/virtio-blk.c
/qemu/hw/block/xen-block.c
/qemu/hw/char/parallel-isa.c
/qemu/hw/char/parallel.c
/qemu/hw/core/cpu-common.c
/qemu/hw/core/machine.c
/qemu/hw/core/numa.c
/qemu/hw/core/trace-events
/qemu/hw/cxl/cxl-cdat.c
/qemu/hw/cxl/cxl-component-utils.c
/qemu/hw/cxl/cxl-device-utils.c
/qemu/hw/cxl/cxl-mailbox-utils.c
/qemu/hw/display/virtio-gpu.c
/qemu/hw/dma/xilinx_axidma.c
/qemu/hw/hppa/machine.c
/qemu/hw/i386/Kconfig
/qemu/hw/i386/acpi-common.c
/qemu/hw/i386/kvm/xen_xenstore.c
/qemu/hw/i386/pc.c
/qemu/hw/i386/pc_piix.c
/qemu/hw/i386/pc_q35.c
/qemu/hw/input/virtio-input-hid.c
/qemu/hw/isa/Kconfig
/qemu/hw/isa/isa-superio.c
/qemu/hw/isa/lpc_ich9.c
/qemu/hw/isa/piix3.c
/qemu/hw/loongarch/virt.c
/qemu/hw/mem/cxl_type3.c
/qemu/hw/mips/loongson3_virt.c
/qemu/hw/net/Kconfig
/qemu/hw/net/e1000.c
/qemu/hw/net/e1000e_core.c
/qemu/hw/net/e1000e_core.h
/qemu/hw/net/e1000x_common.c
/qemu/hw/net/e1000x_common.h
/qemu/hw/net/e1000x_regs.h
/qemu/hw/net/igb.c
/qemu/hw/net/igb_common.h
/qemu/hw/net/igb_core.c
/qemu/hw/net/igb_regs.h
/qemu/hw/net/igbvf.c
/qemu/hw/net/net_rx_pkt.c
/qemu/hw/net/net_rx_pkt.h
/qemu/hw/net/net_tx_pkt.c
/qemu/hw/net/net_tx_pkt.h
/qemu/hw/net/rtl8139.c
/qemu/hw/net/trace-events
/qemu/hw/net/virtio-net.c
/qemu/hw/net/vmxnet3.c
/qemu/hw/pci-bridge/Kconfig
/qemu/hw/pci-bridge/cxl_upstream.c
/qemu/hw/pci-bridge/meson.build
/qemu/hw/pci-host/i440fx.c
/qemu/hw/pci-host/pam.c
/qemu/hw/pci-host/q35.c
/qemu/hw/pci/pci.c
/qemu/hw/pci/pcie_aer.c
/qemu/hw/ppc/e500.c
/qemu/hw/ppc/e500plat.c
/qemu/hw/ppc/mac_newworld.c
/qemu/hw/ppc/mac_oldworld.c
/qemu/hw/ppc/mpc8544ds.c
/qemu/hw/ppc/pegasos2.c
/qemu/hw/ppc/pnv.c
/qemu/hw/ppc/pnv_core.c
/qemu/hw/ppc/pnv_lpc.c
/qemu/hw/ppc/ppc440_bamboo.c
/qemu/hw/ppc/prep.c
/qemu/hw/ppc/spapr.c
/qemu/hw/ppc/spapr_caps.c
/qemu/hw/ppc/spapr_cpu_core.c
/qemu/hw/ppc/spapr_hcall.c
/qemu/hw/s390x/s390-virtio-ccw.c
/qemu/hw/scsi/lsi53c895a.c
/qemu/hw/scsi/scsi-bus.c
/qemu/hw/scsi/scsi-disk.c
/qemu/hw/scsi/trace-events
/qemu/hw/scsi/virtio-scsi-dataplane.c
/qemu/hw/scsi/virtio-scsi.c
/qemu/hw/sh4/r2d.c
/qemu/hw/sparc64/sun4u.c
/qemu/hw/usb/hcd-ohci.c
/qemu/hw/vfio/pci.c
/qemu/hw/virtio/vhost-shadow-virtqueue.c
/qemu/hw/virtio/vhost-shadow-virtqueue.h
/qemu/hw/virtio/vhost-user.c
/qemu/hw/virtio/vhost-vdpa.c
/qemu/hw/virtio/vhost.c
/qemu/hw/virtio/virtio-crypto.c
/qemu/hw/virtio/virtio-input-pci.c
/qemu/hw/virtio/virtio-mem.c
/qemu/hw/virtio/virtio-pci.c
/qemu/hw/virtio/virtio-qmp.c
/qemu/hw/virtio/virtio.c
/qemu/hw/xen/xen-bus.c
/qemu/hw/xtensa/virt.c
/qemu/include/block/aio.h
/qemu/include/block/block-common.h
/qemu/include/block/block-global-state.h
/qemu/include/block/block-io.h
/qemu/include/block/block_int-common.h
/qemu/include/block/blockjob_int.h
/qemu/include/block/export.h
/qemu/include/block/raw-aio.h
/qemu/include/exec/cpu_ldst.h
/qemu/include/exec/exec-all.h
/qemu/include/exec/memory.h
/qemu/include/exec/ram_addr.h
/qemu/include/exec/ramblock.h
/qemu/include/hw/arm/fsl-imx6.h
/qemu/include/hw/arm/smmu-common.h
/qemu/include/hw/arm/smmuv3.h
/qemu/include/hw/boards.h
/qemu/include/hw/char/parallel.h
/qemu/include/hw/core/cpu.h
/qemu/include/hw/cxl/cxl_device.h
/qemu/include/hw/i386/pc.h
/qemu/include/hw/pci-host/pam.h
/qemu/include/hw/pci/pci.h
/qemu/include/hw/ppc/pnv.h
/qemu/include/hw/ppc/spapr.h
/qemu/include/hw/qdev-core.h
/qemu/include/hw/scsi/scsi.h
/qemu/include/hw/southbridge/ich9.h
/qemu/include/hw/southbridge/piix.h
/qemu/include/hw/virtio/vhost-vdpa.h
/qemu/include/hw/virtio/vhost.h
/qemu/include/hw/virtio/virtio-input.h
/qemu/include/hw/virtio/virtio.h
/qemu/include/io/channel.h
/qemu/include/migration/global_state.h
/qemu/include/monitor/monitor.h
/qemu/include/net/eth.h
/qemu/include/qemu/atomic128.h
/qemu/include/qemu/crc32c.h
/qemu/include/qemu/cutils.h
/qemu/include/qemu/help-texts.h
/qemu/include/qemu/int128.h
/qemu/include/qemu/vhost-user-server.h
/qemu/include/qemu/xxhash.h
/qemu/include/sysemu/block-backend-common.h
/qemu/include/sysemu/block-backend-global-state.h
/qemu/include/sysemu/block-backend-io.h
/qemu/include/sysemu/os-win32.h
/qemu/include/sysemu/runstate.h
/qemu/include/tcg/debug-assert.h
/qemu/include/tcg/tcg.h
/qemu/include/ui/console.h
/qemu/include/ui/input.h
/qemu/include/user/syscall-trace.h
/qemu/io/channel-command.c
/qemu/io/channel-file.c
/qemu/io/channel-socket.c
/qemu/io/channel.c
s390x/cpu_loop.c
/qemu/meson.build
/qemu/migration/global_state.c
/qemu/migration/meson.build
/qemu/migration/migration.c
/qemu/migration/migration.h
/qemu/migration/ram.c
/qemu/migration/rdma.c
/qemu/migration/savevm.c
/qemu/migration/xbzrle.c
/qemu/migration/xbzrle.h
/qemu/monitor/hmp.c
/qemu/monitor/monitor-internal.h
/qemu/monitor/monitor.c
/qemu/monitor/qmp.c
/qemu/nbd/server.c
/qemu/net/eth.c
/qemu/python/qemu/machine/machine.py
/qemu/python/qemu/qmp/legacy.py
/qemu/python/qemu/qmp/models.py
/qemu/python/qemu/qmp/protocol.py
/qemu/python/qemu/qmp/qmp_client.py
/qemu/python/scripts/mkvenv.py
/qemu/python/setup.cfg
/qemu/qapi/block-core.json
/qemu/qapi/control.json
/qemu/qapi/opts-visitor.c
/qemu/qapi/qapi-schema.json
/qemu/qapi/qom.json
/qemu/qapi/trace.json
/qemu/qapi/ui.json
/qemu/qemu-img.c
/qemu/qemu-nbd.c
/qemu/qemu-options.hx
/qemu/qga/meson.build
/qemu/qobject/json-lexer.c
/qemu/replay/replay-input.c
/qemu/scripts/archive-source.sh
/qemu/scripts/block-coroutine-wrapper.py
/qemu/scripts/ci/gitlab-kubernetes-runners/values.yaml
/qemu/scripts/ci/org.centos/stream/8/x86_64/test-avocado
/qemu/scripts/decodetree.py
/qemu/scripts/meson-buildoptions.py
/qemu/scripts/modinfo-collect.py
/qemu/scripts/modinfo-generate.py
/qemu/scripts/probe-gdb-support.py
/qemu/scripts/qapi/gen.py
/qemu/scripts/qapi/parser.py
/qemu/scripts/tracetool/format/c.py
/qemu/scripts/tracetool/format/h.py
/qemu/softmmu/ioport.c
/qemu/softmmu/memory.c
/qemu/softmmu/physmem.c
/qemu/softmmu/runstate.c
/qemu/softmmu/vl.c
/qemu/stubs/trace-control.c
/qemu/subprojects/dtc
/qemu/subprojects/keycodemapdb
/qemu/subprojects/slirp.wrap
/qemu/target/arm/Kconfig
/qemu/target/arm/cpu.c
/qemu/target/arm/cpu.h
/qemu/target/arm/kvm.c
/qemu/target/arm/kvm64.c
/qemu/target/arm/kvm_arm.h
/qemu/target/arm/tcg/m_helper.c
/qemu/target/arm/tcg/tlb_helper.c
/qemu/target/hexagon/gen_analyze_funcs.py
/qemu/target/hexagon/gen_helper_funcs.py
/qemu/target/hexagon/gen_helper_protos.py
/qemu/target/hexagon/gen_idef_parser_funcs.py
/qemu/target/hexagon/gen_op_regs.py
/qemu/target/hexagon/gen_tcg_funcs.py
/qemu/target/hexagon/genptr.c
/qemu/target/hexagon/hex_common.py
/qemu/target/hexagon/mmvec/decode_ext_mmvec.c
/qemu/target/hexagon/translate.c
/qemu/target/i386/cpu.c
/qemu/target/loongarch/cpu.c
/qemu/target/loongarch/insn_trans/trans_lsx.c.inc
/qemu/target/loongarch/op_helper.c
/qemu/target/ppc/cpu-models.c
/qemu/target/ppc/cpu-models.h
/qemu/target/ppc/cpu.h
/qemu/target/ppc/cpu_init.c
/qemu/target/ppc/excp_helper.c
/qemu/target/ppc/fpu_helper.c
/qemu/target/ppc/helper.h
/qemu/target/ppc/helper_regs.c
/qemu/target/ppc/insn32.decode
/qemu/target/ppc/kvm.c
/qemu/target/ppc/kvm_ppc.h
/qemu/target/ppc/mem_helper.c
/qemu/target/ppc/misc_helper.c
/qemu/target/ppc/power8-pmu.c
/qemu/target/ppc/spr_common.h
/qemu/target/ppc/translate.c
/qemu/target/ppc/translate/fixedpoint-impl.c.inc
/qemu/target/ppc/translate/fp-impl.c.inc
/qemu/target/s390x/cpu.h
/qemu/target/s390x/helper.h
/qemu/target/s390x/tcg/insn-data.h.inc
/qemu/target/s390x/tcg/mem_helper.c
/qemu/target/s390x/tcg/translate.c
/qemu/target/sh4/translate.c
/qemu/target/sparc/ldst_helper.c
/qemu/target/sparc/translate.c
/qemu/tcg/aarch64/tcg-target-con-set.h
/qemu/tcg/aarch64/tcg-target-con-str.h
/qemu/tcg/aarch64/tcg-target.c.inc
/qemu/tcg/aarch64/tcg-target.h
/qemu/tcg/arm/tcg-target.h
/qemu/tcg/i386/tcg-target.c.inc
/qemu/tcg/i386/tcg-target.h
/qemu/tcg/mips/tcg-target.c.inc
/qemu/tcg/mips/tcg-target.h
/qemu/tcg/ppc/tcg-target-con-set.h
/qemu/tcg/ppc/tcg-target-con-str.h
/qemu/tcg/ppc/tcg-target.c.inc
/qemu/tcg/ppc/tcg-target.h
/qemu/tcg/riscv/tcg-target-con-set.h
/qemu/tcg/riscv/tcg-target-con-str.h
/qemu/tcg/riscv/tcg-target.c.inc
/qemu/tcg/riscv/tcg-target.h
/qemu/tcg/s390x/tcg-target-con-set.h
/qemu/tcg/s390x/tcg-target.c.inc
/qemu/tcg/s390x/tcg-target.h
/qemu/tcg/sparc64/tcg-target.h
/qemu/tcg/tcg-op-ldst.c
/qemu/tcg/tcg.c
/qemu/tcg/tci/tcg-target.h
/qemu/tests/Makefile.include
/qemu/tests/avocado/acpi-bits.py
/qemu/tests/avocado/netdev-ethtool.py
/qemu/tests/avocado/virtio-gpu.py
/qemu/tests/bench/meson.build
/qemu/tests/data/acpi/microvm/APIC
/qemu/tests/data/acpi/microvm/APIC.ioapic2
/qemu/tests/data/acpi/microvm/APIC.pcie
/qemu/tests/data/acpi/pc/APIC
/qemu/tests/data/acpi/pc/APIC.acpihmat
/qemu/tests/data/acpi/pc/APIC.cphp
/qemu/tests/data/acpi/pc/APIC.dimmpxm
/qemu/tests/data/acpi/q35/APIC
/qemu/tests/data/acpi/q35/APIC.acpihmat
/qemu/tests/data/acpi/q35/APIC.acpihmat-noinitiator
/qemu/tests/data/acpi/q35/APIC.core-count2
/qemu/tests/data/acpi/q35/APIC.cphp
/qemu/tests/data/acpi/q35/APIC.dimmpxm
/qemu/tests/data/acpi/q35/APIC.xapic
/qemu/tests/decode/err_field10.decode
/qemu/tests/decode/err_field7.decode
/qemu/tests/decode/err_field8.decode
/qemu/tests/decode/err_field9.decode
/qemu/tests/decode/meson.build
/qemu/tests/decode/succ_named_field.decode
/qemu/tests/docker/Makefile.include
/qemu/tests/meson.build
/qemu/tests/migration/meson.build
/qemu/tests/qapi-schema/doc-interleaved-section.err
/qemu/tests/qemu-iotests/049.out
/qemu/tests/qemu-iotests/051.out
/qemu/tests/qemu-iotests/051.pc.out
/qemu/tests/qemu-iotests/172
/qemu/tests/qemu-iotests/178.out.qcow2
/qemu/tests/qemu-iotests/178.out.raw
/qemu/tests/qemu-iotests/245
/qemu/tests/qemu-iotests/245.out
/qemu/tests/qemu-iotests/256
/qemu/tests/qemu-iotests/common.filter
/qemu/tests/qemu-iotests/common.rc
/qemu/tests/qemu-iotests/iotests.py
/qemu/tests/qemu-iotests/tests/graph-changes-while-io
/qemu/tests/qemu-iotests/tests/graph-changes-while-io.out
/qemu/tests/qemu-iotests/tests/iothreads-create
/qemu/tests/qemu-iotests/tests/iothreads-create.out
/qemu/tests/qtest/ac97-test.c
/qemu/tests/qtest/bios-tables-test.c
/qemu/tests/qtest/cdrom-test.c
/qemu/tests/qtest/cxl-test.c
/qemu/tests/qtest/device-plug-test.c
/qemu/tests/qtest/fuzz-lsi53c895a-test.c
/qemu/tests/qtest/libqos/igb.c
/qemu/tests/qtest/libqtest.c
/qemu/tests/qtest/libqtest.h
/qemu/tests/qtest/meson.build
/qemu/tests/qtest/migration-helpers.c
/qemu/tests/qtest/migration-helpers.h
/qemu/tests/qtest/migration-test.c
/qemu/tests/qtest/readconfig-test.c
/qemu/tests/qtest/rtl8139-test.c
/qemu/tests/qtest/usb-hcd-ehci-test.c
/qemu/tests/qtest/usb-hcd-uhci-test.c
/qemu/tests/qtest/virtio-ccw-test.c
/qemu/tests/tcg/hexagon/Makefile.target
/qemu/tests/tcg/hexagon/atomics.c
/qemu/tests/tcg/hexagon/brev.c
/qemu/tests/tcg/hexagon/circ.c
/qemu/tests/tcg/hexagon/dual_stores.c
/qemu/tests/tcg/hexagon/fpstuff.c
/qemu/tests/tcg/hexagon/hex_sigsegv.c
/qemu/tests/tcg/hexagon/hex_test.h
/qemu/tests/tcg/hexagon/hvx_misc.c
/qemu/tests/tcg/hexagon/load_align.c
/qemu/tests/tcg/hexagon/load_unpack.c
/qemu/tests/tcg/hexagon/mem_noshuf.c
/qemu/tests/tcg/hexagon/mem_noshuf_exception.c
/qemu/tests/tcg/hexagon/misc.c
/qemu/tests/tcg/hexagon/multi_result.c
/qemu/tests/tcg/hexagon/overflow.c
/qemu/tests/tcg/hexagon/preg_alias.c
/qemu/tests/tcg/hexagon/read_write_overlap.c
/qemu/tests/tcg/hexagon/reg_mut.c
/qemu/tests/tcg/hexagon/usr.c
/qemu/tests/tcg/s390x/Makefile.target
/qemu/tests/tcg/s390x/lcbb.c
/qemu/tests/tcg/s390x/locfhr.c
/qemu/tests/unit/meson.build
/qemu/tests/unit/test-aio.c
/qemu/tests/unit/test-bdrv-drain.c
/qemu/tests/unit/test-block-iothread.c
/qemu/tests/unit/test-cutils.c
/qemu/tests/unit/test-nested-aio-poll.c
/qemu/tests/unit/test-xbzrle.c
/qemu/tests/vm/Makefile.include
/qemu/trace-events
/qemu/trace/control-internal.h
/qemu/trace/control-target.c
/qemu/trace/control.c
/qemu/trace/control.h
/qemu/trace/event-internal.h
/qemu/trace/qmp.c
/qemu/trace/trace-hmp-cmds.c
/qemu/ui/cursor.c
/qemu/ui/dbus-listener.c
/qemu/ui/gtk-egl.c
/qemu/ui/gtk-gl-area.c
/qemu/ui/gtk.c
/qemu/ui/input.c
/qemu/ui/meson.build
/qemu/ui/sdl2-gl.c
/qemu/ui/sdl2.c
/qemu/ui/trace-events
/qemu/ui/vnc.c
/qemu/util/aio-posix.c
/qemu/util/aio-posix.h
/qemu/util/aio-win32.c
/qemu/util/async.c
/qemu/util/bufferiszero.c
/qemu/util/cpuinfo-aarch64.c
/qemu/util/cpuinfo-i386.c
/qemu/util/crc32c.c
/qemu/util/cutils.c
/qemu/util/fdmon-epoll.c
/qemu/util/fdmon-io_uring.c
/qemu/util/fdmon-poll.c
/qemu/util/guest-random.c
/qemu/util/main-loop.c
/qemu/util/meson.build
/qemu/util/oslib-win32.c
/qemu/util/qemu-coroutine-io.c
/qemu/util/qemu-sockets.c
/qemu/util/qsp.c
/qemu/util/vfio-helpers.c
/qemu/util/vhost-user-server.c
9073bfd704-May-2023 Matheus Tavares Bernardino <quic_mathbern@quicinc.com>

Hexagon (linux-user/hexagon): handle breakpoints

This enables LLDB to work with hexagon linux-user mode through the GDB
remote protocol.

Helped-by: Richard Henderson <richard.henderson@linaro.org>

Hexagon (linux-user/hexagon): handle breakpoints

This enables LLDB to work with hexagon linux-user mode through the GDB
remote protocol.

Helped-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: <c287a129dcbe7d974d8b7608e8672d34a3c91c04.1683214375.git.quic_mathbern@quicinc.com>

show more ...

3128588204-May-2023 Matheus Tavares Bernardino <quic_mathbern@quicinc.com>

Hexagon: append eflags to unknown cpu model string

Running qemu-hexagon with a binary that was compiled for an arch version
unknown by qemu can produce a somewhat confusing message:

qemu-hexagon:

Hexagon: append eflags to unknown cpu model string

Running qemu-hexagon with a binary that was compiled for an arch version
unknown by qemu can produce a somewhat confusing message:

qemu-hexagon: unable to find CPU model 'unknown'

Let's give a bit more info by appending the eflags so that the message
becomes:

qemu-hexagon: unable to find CPU model 'unknown (0x69)'

Signed-off-by: Matheus Tavares Bernardino <quic_mathbern@quicinc.com>
Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Tested-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Taylor Simpson <tsimpson@quicinc.com>
Message-Id: <8a8d013cc619b94fd4fb577ae6a8df26cedb972b.1683225804.git.quic_mathbern@quicinc.com>

show more ...


hexagon/target_elf.h
/qemu/meson.build
/qemu/target/hexagon/README
/qemu/target/hexagon/arch.c
/qemu/target/hexagon/attribs_def.h.inc
/qemu/target/hexagon/cpu.c
/qemu/target/hexagon/cpu.h
/qemu/target/hexagon/gen_analyze_funcs.py
/qemu/target/hexagon/gen_helper_funcs.py
/qemu/target/hexagon/gen_helper_protos.py
/qemu/target/hexagon/gen_idef_parser_funcs.py
/qemu/target/hexagon/gen_tcg.h
/qemu/target/hexagon/gen_tcg_funcs.py
/qemu/target/hexagon/gen_tcg_hvx.h
/qemu/target/hexagon/genptr.c
/qemu/target/hexagon/genptr.h
/qemu/target/hexagon/helper.h
/qemu/target/hexagon/hex_common.py
/qemu/target/hexagon/idef-parser/idef-parser.lex
/qemu/target/hexagon/idef-parser/idef-parser.y
/qemu/target/hexagon/idef-parser/parser-helpers.c
/qemu/target/hexagon/idef-parser/parser-helpers.h
/qemu/target/hexagon/imported/branch.idef
/qemu/target/hexagon/imported/encode_pp.def
/qemu/target/hexagon/imported/ldst.idef
/qemu/target/hexagon/imported/mmvec/encode_ext.def
/qemu/target/hexagon/imported/mmvec/ext.idef
/qemu/target/hexagon/macros.h
/qemu/target/hexagon/mmvec/macros.h
/qemu/target/hexagon/op_helper.c
/qemu/target/hexagon/op_helper.h
/qemu/target/hexagon/translate.c
/qemu/target/hexagon/translate.h
/qemu/tests/tcg/hexagon/Makefile.target
/qemu/tests/tcg/hexagon/fpstuff.c
/qemu/tests/tcg/hexagon/hvx_misc.c
/qemu/tests/tcg/hexagon/misc.c
/qemu/tests/tcg/hexagon/read_write_overlap.c
/qemu/tests/tcg/hexagon/v68_hvx.c
/qemu/tests/tcg/hexagon/v68_scalar.c
/qemu/tests/tcg/hexagon/v69_hvx.c
/qemu/tests/tcg/hexagon/v6mpy_ref.c.inc
/qemu/tests/tcg/hexagon/v73_scalar.c
fc2622f627-Apr-2023 Taylor Simpson <tsimpson@quicinc.com>

Hexagon (target/hexagon) Add support for v68/v69/v71/v73

Add support for the ELF flags
Move target/hexagon/cpu.[ch] to be v73
Change the compiler flag used by "make check-tcg"

The decbin instructio

Hexagon (target/hexagon) Add support for v68/v69/v71/v73

Add support for the ELF flags
Move target/hexagon/cpu.[ch] to be v73
Change the compiler flag used by "make check-tcg"

The decbin instruction is removed in Hexagon v73, so check the
version before trying to compile the instruction.

Signed-off-by: Taylor Simpson <tsimpson@quicinc.com>
Reviewed-by: Anton Johansson <anjo@rev.ng>
Message-Id: <20230427224057.3766963-2-tsimpson@quicinc.com>

show more ...


/qemu/accel/tcg/cpu-exec-common.c
/qemu/accel/tcg/cputlb.c
/qemu/accel/tcg/internal.h
/qemu/accel/tcg/tb-maint.c
/qemu/accel/tcg/tcg-accel-ops-icount.c
/qemu/accel/tcg/tcg-accel-ops-icount.h
/qemu/accel/tcg/tcg-accel-ops-rr.c
/qemu/configs/targets/mips-linux-user.mak
/qemu/configs/targets/mips-softmmu.mak
/qemu/configs/targets/mips64-linux-user.mak
/qemu/configs/targets/mips64-softmmu.mak
/qemu/configs/targets/mips64el-linux-user.mak
/qemu/configs/targets/mips64el-softmmu.mak
/qemu/configs/targets/mipsel-linux-user.mak
/qemu/configs/targets/mipsel-softmmu.mak
/qemu/configs/targets/mipsn32-linux-user.mak
/qemu/configs/targets/mipsn32el-linux-user.mak
/qemu/configs/targets/nios2-softmmu.mak
/qemu/configs/targets/sh4-linux-user.mak
/qemu/configs/targets/sh4-softmmu.mak
/qemu/configs/targets/sh4eb-linux-user.mak
/qemu/configs/targets/sh4eb-softmmu.mak
/qemu/configure
/qemu/include/exec/cpu-defs.h
/qemu/include/exec/cpu_ldst.h
/qemu/include/exec/memop.h
/qemu/include/exec/poison.h
hexagon/target_elf.h
/qemu/replay/replay.c
/qemu/target/hexagon/README
/qemu/target/hexagon/cpu.c
/qemu/target/hexagon/cpu.h
/qemu/target/loongarch/csr_helper.c
/qemu/target/loongarch/iocsr_helper.c
/qemu/target/mips/tcg/micromips_translate.c.inc
/qemu/target/mips/tcg/mips16e_translate.c.inc
/qemu/target/mips/tcg/mxu_translate.c
/qemu/target/mips/tcg/nanomips_translate.c.inc
/qemu/target/nios2/translate.c
/qemu/target/sh4/translate.c
/qemu/tcg/aarch64/tcg-target.c.inc
/qemu/tcg/arm/tcg-target.c.inc
/qemu/tcg/i386/tcg-target.c.inc
/qemu/tcg/loongarch64/tcg-target-con-set.h
/qemu/tcg/loongarch64/tcg-target-con-str.h
/qemu/tcg/loongarch64/tcg-target.c.inc
/qemu/tcg/mips/tcg-target-con-set.h
/qemu/tcg/mips/tcg-target-con-str.h
/qemu/tcg/mips/tcg-target.c.inc
/qemu/tcg/mips/tcg-target.h
/qemu/tcg/ppc/tcg-target-con-set.h
/qemu/tcg/ppc/tcg-target-con-str.h
/qemu/tcg/ppc/tcg-target.c.inc
/qemu/tcg/riscv/tcg-target-con-set.h
/qemu/tcg/riscv/tcg-target-con-str.h
/qemu/tcg/riscv/tcg-target.c.inc
/qemu/tcg/s390x/tcg-target-con-set.h
/qemu/tcg/s390x/tcg-target-con-str.h
/qemu/tcg/s390x/tcg-target.c.inc
/qemu/tcg/tcg.c
/qemu/tests/tcg/hexagon/Makefile.target
/qemu/tests/tcg/hexagon/misc.c
1e35d32709-Apr-2023 Michael Tokarev <mjt@tls.msk.ru>

linux-user: fix getgroups/setgroups allocations

linux-user getgroups(), setgroups(), getgroups32() and setgroups32()
used alloca() to allocate grouplist arrays, with unchecked gidsetsize
coming from

linux-user: fix getgroups/setgroups allocations

linux-user getgroups(), setgroups(), getgroups32() and setgroups32()
used alloca() to allocate grouplist arrays, with unchecked gidsetsize
coming from the "guest". With NGROUPS_MAX being 65536 (linux, and it
is common for an application to allocate NGROUPS_MAX for getgroups()),
this means a typical allocation is half the megabyte on the stack.
Which just overflows stack, which leads to immediate SIGSEGV in actual
system getgroups() implementation.

An example of such issue is aptitude, eg
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=811087#72

Cap gidsetsize to NGROUPS_MAX (return EINVAL if it is larger than that),
and use heap allocation for grouplist instead of alloca(). While at it,
fix coding style and make all 4 implementations identical.

Try to not impose random limits - for example, allow gidsetsize to be
negative for getgroups() - just do not allocate negative-sized grouplist
in this case but still do actual getgroups() call. But do not allow
negative gidsetsize for setgroups() since its argument is unsigned.

Capping by NGROUPS_MAX seems a bit arbitrary, - we can do more, it is
not an error if set size will be NGROUPS_MAX+1. But we should not allow
integer overflow for the array being allocated. Maybe it is enough to
just call g_try_new() and return ENOMEM if it fails.

Maybe there's also no need to convert setgroups() since this one is
usually smaller and known beforehand (KERN_NGROUPS_MAX is actually 63, -
this is apparently a kernel-imposed limit for runtime group set).

The patch fixes aptitude segfault mentioned above.

Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Message-Id: <20230409105327.1273372-1-mjt@msgid.tls.msk.ru>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

a0f8d27004-Apr-2023 Daniil Kovalev <dkovalev@compiler-toolchain-for.me>

linux-user: Fix mips fp64 executables loading

If a program requires fr1, we should set the FR bit of CP0 control status
register and add F64 hardware flag. The corresponding `else if` branch
stateme

linux-user: Fix mips fp64 executables loading

If a program requires fr1, we should set the FR bit of CP0 control status
register and add F64 hardware flag. The corresponding `else if` branch
statement is copied from the linux kernel sources (see `arch_check_elf` function
in linux/arch/mips/kernel/elf.c).

Signed-off-by: Daniil Kovalev <dkovalev@compiler-toolchain-for.me>
Reviewed-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Message-Id: <20230404052153.16617-1-dkovalev@compiler-toolchain-for.me>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

f443a26c22-Apr-2023 Thomas Weißschuh <thomas@t-8ch.de>

linux-user: Don't require PROT_READ for mincore

The kernel does not require PROT_READ for addresses passed to mincore.
For example the fincore(1) tool from util-linux uses PROT_NONE and
currently do

linux-user: Don't require PROT_READ for mincore

The kernel does not require PROT_READ for addresses passed to mincore.
For example the fincore(1) tool from util-linux uses PROT_NONE and
currently does not work under qemu-user.

Example (with fincore(1) from util-linux 2.38):

$ fincore /proc/self/exe
RES PAGES SIZE FILE
24K 6 22.1K /proc/self/exe

$ qemu-x86_64 /usr/bin/fincore /proc/self/exe
fincore: failed to do mincore: /proc/self/exe: Cannot allocate memory

With this patch:

$ ./build/qemu-x86_64 /usr/bin/fincore /proc/self/exe
RES PAGES SIZE FILE
24K 6 22.1K /proc/self/exe

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230422100314.1650-3-thomas@t-8ch.de>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

64d0601522-Apr-2023 Thomas Weißschuh <thomas@t-8ch.de>

linux-user: Add new flag VERIFY_NONE

This can be used to validate that an address range is mapped but without
being readable or writable.

It will be used by an updated implementation of mincore().

linux-user: Add new flag VERIFY_NONE

This can be used to validate that an address range is mapped but without
being readable or writable.

It will be used by an updated implementation of mincore().

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230422100314.1650-2-thomas@t-8ch.de>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

b67e5cb424-Apr-2023 Thomas Huth <thuth@redhat.com>

linux-user/main: Use list_cpus() instead of cpu_list()

This way we can get rid of the if'deffery and the XXX comment
here (it's repeated in the list_cpus() function anyway).

Signed-off-by: Thomas H

linux-user/main: Use list_cpus() instead of cpu_list()

This way we can get rid of the if'deffery and the XXX comment
here (it's repeated in the list_cpus() function anyway).

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230424122126.236586-1-thuth@redhat.com>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

7f696cdd24-Apr-2023 Thomas Weißschuh <thomas@t-8ch.de>

linux-user: Add open_tree() syscall

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230424153429.276788-2-thomas@t-8ch.de>
[lv: move

linux-user: Add open_tree() syscall

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
Message-Id: <20230424153429.276788-2-thomas@t-8ch.de>
[lv: move declaration at the beginning of the block,
define syscall]
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

4b2d275324-Apr-2023 Thomas Weißschuh <thomas@t-8ch.de>

linux-user: Add move_mount() syscall

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
[lv: define syscall]
Message-Id: <20230424153429.276788-1-thoma

linux-user: Add move_mount() syscall

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
[lv: define syscall]
Message-Id: <20230424153429.276788-1-thomas@t-8ch.de>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

59d1172726-Apr-2023 Thomas Weißschuh <thomas@t-8ch.de>

linux-user: report ENOTTY for unknown ioctls

The correct error number for unknown ioctls is ENOTTY.

ENOSYS would mean that the ioctl() syscall itself is not implemented,
which is very improbable an

linux-user: report ENOTTY for unknown ioctls

The correct error number for unknown ioctls is ENOTTY.

ENOSYS would mean that the ioctl() syscall itself is not implemented,
which is very improbable and unexpected for userspace.

ENOTTY means "Inappropriate ioctl for device". This is what the kernel
returns on unknown ioctls, what qemu is trying to express and what
userspace is prepared to handle.

Signed-off-by: Thomas Weißschuh <thomas@t-8ch.de>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-Id: <20230426070659.80649-1-thomas@t-8ch.de>
Signed-off-by: Laurent Vivier <laurent@vivier.eu>

show more ...

1...<<11121314151617181920>>...136