History log of /openbmc/qemu/hw/intc/ (Results 1301 – 1325 of 1839)
Revision Date Author Comments
(<<< Hide modified files)
(Show modified files >>>)
e1be0a5712-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Implement NVIC_ITNS<n> registers

For v8M, the NVIC has a new set of registers per interrupt,
NVIC_ITNS<n>. These determine whether the interrupt targets Secure
or Non-secure state. Implement t

nvic: Implement NVIC_ITNS<n> registers

For v8M, the NVIC has a new set of registers per interrupt,
NVIC_ITNS<n>. These determine whether the interrupt targets Secure
or Non-secure state. Implement the register read/write code for
these, and make them cause NVIC_IABR, NVIC_ICER, NVIC_ISER,
NVIC_ICPR, NVIC_IPR and NVIC_ISPR to RAZ/WI for non-secure
accesses to fields corresponding to interrupts which are
configured to target secure state.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1505240046-11454-8-git-send-email-peter.maydell@linaro.org

show more ...

028b0da412-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Make ICSR.RETTOBASE handle banked exceptions

Update the code in nvic_rettobase() so that it checks the
sec_vectors[] array as well as the vectors[] array if needed.

Signed-off-by: Peter Mayde

nvic: Make ICSR.RETTOBASE handle banked exceptions

Update the code in nvic_rettobase() so that it checks the
sec_vectors[] array as well as the vectors[] array if needed.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1505240046-11454-7-git-send-email-peter.maydell@linaro.org

show more ...

3b2e934412-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Implement AIRCR changes for v8M

The Application Interrupt and Reset Control Register has some changes
for v8M:
* new bits SYSRESETREQS, BFHFNMINS and PRIS: these all have
real state if the

nvic: Implement AIRCR changes for v8M

The Application Interrupt and Reset Control Register has some changes
for v8M:
* new bits SYSRESETREQS, BFHFNMINS and PRIS: these all have
real state if the security extension is implemented and otherwise
are constant
* the PRIGROUP field is banked between security states
* non-secure code can be blocked from using the SYSRESET bit
to reset the system if SYSRESETREQS is set

Implement the new state and the changes to register read and write.
For the moment we ignore the effects of the secure PRIGROUP.
We will implement the effects of PRIS and BFHFNMIS later.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1505240046-11454-6-git-send-email-peter.maydell@linaro.org

show more ...

5255fcf812-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Add cached vectpending_prio state

Instead of looking up the pending priority
in nvic_pending_prio(), cache it in a new state struct
field. The calculation of the pending priority given
the int

nvic: Add cached vectpending_prio state

Instead of looking up the pending priority
in nvic_pending_prio(), cache it in a new state struct
field. The calculation of the pending priority given
the interrupt number is more complicated in v8M with
the security extension, so the caching will be worthwhile.

This changes nvic_pending_prio() from returning a full
(group + subpriority) priority value to returning a group
priority. This doesn't require changes to its callsites
because we use it only in comparisons of the form
execution_prio > nvic_pending_prio()
and execution priority is always a group priority, so
a test (exec prio > full prio) is true if and only if
(execprio > group_prio).

(Architecturally the expected comparison is with the
group priority for this sort of "would we preempt" test;
we were only doing a test with a full priority as an
optimisation to avoid the mask, which is possible
precisely because the two comparisons always give the
same answer.)

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1505240046-11454-5-git-send-email-peter.maydell@linaro.org

show more ...

e93bc2ac12-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Add cached vectpending_is_s_banked state

With banked exceptions, just the exception number in
s->vectpending is no longer sufficient to uniquely identify
the pending exception. Add a vectpendi

nvic: Add cached vectpending_is_s_banked state

With banked exceptions, just the exception number in
s->vectpending is no longer sufficient to uniquely identify
the pending exception. Add a vectpending_is_s_banked bool
which is true if the exception is using the sec_vectors[]
array.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1505240046-11454-4-git-send-email-peter.maydell@linaro.org

show more ...

17906a1621-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Add banked exception states

For the v8M security extension, some exceptions must be banked
between security states. Add the new vecinfo array which holds
the state for the banked exceptions an

nvic: Add banked exception states

For the v8M security extension, some exceptions must be banked
between security states. Add the new vecinfo array which holds
the state for the banked exceptions and migrate it if the
CPU the NVIC is attached to implements the security extension.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>

show more ...


/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/Makefile.objs
/openbmc/qemu/Makefile.target
/openbmc/qemu/accel/kvm/kvm-all.c
/openbmc/qemu/accel/stubs/Makefile.objs
/openbmc/qemu/accel/stubs/hax-stub.c
/openbmc/qemu/accel/tcg/Makefile.objs
/openbmc/qemu/accel/tcg/atomic_template.h
/openbmc/qemu/accel/tcg/softmmu_template.h
/openbmc/qemu/accel/tcg/tcg-runtime.c
/openbmc/qemu/accel/tcg/tcg-runtime.h
/openbmc/qemu/accel/tcg/user-exec-stub.c
/openbmc/qemu/accel/tcg/user-exec.c
/openbmc/qemu/backends/hostmem-file.c
/openbmc/qemu/block/iscsi.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/vvfat.c
/openbmc/qemu/bsd-user/main.c
/openbmc/qemu/configure
/openbmc/qemu/default-configs/pci.mak
/openbmc/qemu/default-configs/ppc-softmmu.mak
/openbmc/qemu/default-configs/ppc64-softmmu.mak
/openbmc/qemu/default-configs/s390x-softmmu.mak
/openbmc/qemu/default-configs/sparc64-softmmu.mak
/openbmc/qemu/docs/devel/build-system.txt
/openbmc/qemu/dump.c
/openbmc/qemu/exec.c
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/acpi/core.c
/openbmc/qemu/hw/alpha/dp264.c
/openbmc/qemu/hw/arm/armv7m.c
/openbmc/qemu/hw/arm/aspeed_soc.c
/openbmc/qemu/hw/arm/collie.c
/openbmc/qemu/hw/arm/exynos4210.c
/openbmc/qemu/hw/arm/gumstix.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/mainstone.c
/openbmc/qemu/hw/arm/mps2.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/netduino2.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap1.c
/openbmc/qemu/hw/arm/omap2.c
/openbmc/qemu/hw/arm/omap_sx1.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/pxa2xx.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/stm32f205_soc.c
/openbmc/qemu/hw/arm/strongarm.c
/openbmc/qemu/hw/arm/tosa.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/virt.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/audio/intel-hda.c
/openbmc/qemu/hw/audio/wm8750.c
/openbmc/qemu/hw/block/fdc.c
/openbmc/qemu/hw/block/virtio-blk.c
/openbmc/qemu/hw/block/xen_disk.c
/openbmc/qemu/hw/core/machine.c
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/multiboot.c
/openbmc/qemu/hw/i386/pc.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
/openbmc/qemu/hw/i386/xen/xen-mapcache.c
/openbmc/qemu/hw/ide/ahci.c
/openbmc/qemu/hw/ide/ahci_internal.h
/openbmc/qemu/hw/ide/atapi.c
/openbmc/qemu/hw/ide/cmd646.c
/openbmc/qemu/hw/ide/core.c
/openbmc/qemu/hw/ide/microdrive.c
/openbmc/qemu/hw/ide/pci.c
/openbmc/qemu/hw/ide/piix.c
/openbmc/qemu/hw/ide/qdev.c
/openbmc/qemu/hw/ide/trace-events
/openbmc/qemu/hw/ide/via.c
armv7m_nvic.c
/openbmc/qemu/hw/lm32/lm32_boards.c
/openbmc/qemu/hw/lm32/milkymist.c
/openbmc/qemu/hw/m68k/an5206.c
/openbmc/qemu/hw/m68k/mcf5208.c
/openbmc/qemu/hw/mips/Makefile.objs
/openbmc/qemu/hw/mips/cps.c
/openbmc/qemu/hw/mips/mips_fulong2e.c
/openbmc/qemu/hw/mips/mips_jazz.c
/openbmc/qemu/hw/mips/mips_malta.c
/openbmc/qemu/hw/mips/mips_mipssim.c
/openbmc/qemu/hw/mips/mips_r4k.c
/openbmc/qemu/hw/misc/applesmc.c
/openbmc/qemu/hw/misc/ivshmem.c
/openbmc/qemu/hw/moxie/moxiesim.c
/openbmc/qemu/hw/net/Makefile.objs
/openbmc/qemu/hw/net/sunhme.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/openrisc/openrisc_sim.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/mac_newworld.c
/openbmc/qemu/hw/ppc/mac_oldworld.c
/openbmc/qemu/hw/ppc/ppc440_bamboo.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/prep.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/virtex_ml507.c
/openbmc/qemu/hw/s390x/Makefile.objs
/openbmc/qemu/hw/s390x/css.c
/openbmc/qemu/hw/s390x/s390-pci-bus.c
/openbmc/qemu/hw/s390x/s390-pci-bus.h
/openbmc/qemu/hw/s390x/s390-pci-inst.c
/openbmc/qemu/hw/s390x/s390-pci-stub.c
/openbmc/qemu/hw/s390x/s390-virtio-ccw.c
/openbmc/qemu/hw/s390x/s390-virtio-hcall.c
/openbmc/qemu/hw/s390x/s390-virtio-hcall.h
/openbmc/qemu/hw/s390x/sclp.c
/openbmc/qemu/hw/s390x/virtio-ccw.c
/openbmc/qemu/hw/s390x/virtio-ccw.h
/openbmc/qemu/hw/scsi/esp.c
/openbmc/qemu/hw/scsi/megasas.c
/openbmc/qemu/hw/scsi/mptendian.c
/openbmc/qemu/hw/scsi/mptsas.c
/openbmc/qemu/hw/scsi/scsi-bus.c
/openbmc/qemu/hw/scsi/scsi-disk.c
/openbmc/qemu/hw/scsi/scsi-generic.c
/openbmc/qemu/hw/scsi/spapr_vscsi.c
/openbmc/qemu/hw/scsi/virtio-scsi-dataplane.c
/openbmc/qemu/hw/scsi/virtio-scsi.c
/openbmc/qemu/hw/scsi/vmw_pvscsi.c
/openbmc/qemu/hw/sh4/r2d.c
/openbmc/qemu/hw/sh4/shix.c
/openbmc/qemu/hw/sparc/leon3.c
/openbmc/qemu/hw/sparc/sun4m.c
/openbmc/qemu/hw/sparc64/sparc64.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/hw/tricore/tricore_testboard.c
/openbmc/qemu/hw/unicore32/puv3.c
/openbmc/qemu/hw/usb/dev-uas.c
/openbmc/qemu/hw/usb/hcd-ehci.c
/openbmc/qemu/hw/virtio/virtio-balloon.c
/openbmc/qemu/hw/virtio/virtio.c
/openbmc/qemu/hw/xen/xen_pt.h
/openbmc/qemu/hw/xen/xen_pt_config_init.c
/openbmc/qemu/hw/xen/xen_pt_msi.c
/openbmc/qemu/hw/xtensa/sim.c
/openbmc/qemu/hw/xtensa/xtfpga.c
/openbmc/qemu/include/hw/arm/armv7m.h
/openbmc/qemu/include/hw/arm/aspeed_soc.h
/openbmc/qemu/include/hw/arm/stm32f205_soc.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/ide/internal.h
/openbmc/qemu/include/hw/intc/armv7m_nvic.h
/openbmc/qemu/include/hw/net/mii.h
/openbmc/qemu/include/hw/pci/pci_ids.h
/openbmc/qemu/include/hw/s390x/s390-virtio-ccw.h
/openbmc/qemu/include/hw/s390x/sclp.h
/openbmc/qemu/include/hw/scsi/scsi.h
/openbmc/qemu/include/hw/virtio/virtio-scsi.h
/openbmc/qemu/include/qemu/osdep.h
/openbmc/qemu/include/qom/cpu.h
/openbmc/qemu/include/qom/object_interfaces.h
/openbmc/qemu/include/scsi/constants.h
/openbmc/qemu/include/scsi/utils.h
/openbmc/qemu/include/sysemu/seccomp.h
/openbmc/qemu/linux-user/main.c
/openbmc/qemu/memory.c
/openbmc/qemu/net/hub.c
/openbmc/qemu/net/net.c
/openbmc/qemu/numa.c
/openbmc/qemu/pc-bios/s390-ccw/netboot.mak
/openbmc/qemu/qapi-schema.json
/openbmc/qemu/qemu-options.hx
/openbmc/qemu/qemu-seccomp.c
/openbmc/qemu/qga/vss-win32.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/qom/object_interfaces.c
/openbmc/qemu/qtest.c
/openbmc/qemu/scripts/checkpatch.pl
/openbmc/qemu/scripts/qemu.py
/openbmc/qemu/scripts/qmp/qmp-shell
/openbmc/qemu/scripts/qmp/qmp.py
/openbmc/qemu/scripts/qtest.py
/openbmc/qemu/scripts/update-linux-headers.sh
/openbmc/qemu/scsi/Makefile.objs
/openbmc/qemu/scsi/utils.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/i386/arch_dump.c
/openbmc/qemu/target/i386/arch_memory_mapping.c
/openbmc/qemu/target/i386/cpu.c
/openbmc/qemu/target/i386/cpu.h
/openbmc/qemu/target/i386/hax-mem.c
/openbmc/qemu/target/i386/hyperv-proto.h
/openbmc/qemu/target/i386/hyperv.c
/openbmc/qemu/target/i386/kvm.c
/openbmc/qemu/target/i386/machine.c
/openbmc/qemu/target/i386/monitor.c
/openbmc/qemu/target/i386/ops_sse.h
/openbmc/qemu/target/i386/svm_helper.c
/openbmc/qemu/target/i386/translate.c
/openbmc/qemu/target/mips/Makefile.objs
/openbmc/qemu/target/mips/cp0_timer.c
/openbmc/qemu/target/mips/cpu-qom.h
/openbmc/qemu/target/mips/cpu.c
/openbmc/qemu/target/mips/cpu.h
/openbmc/qemu/target/mips/dsp_helper.c
/openbmc/qemu/target/mips/gdbstub.c
/openbmc/qemu/target/mips/helper.c
/openbmc/qemu/target/mips/internal.h
/openbmc/qemu/target/mips/kvm.c
/openbmc/qemu/target/mips/machine.c
/openbmc/qemu/target/mips/msa_helper.c
/openbmc/qemu/target/mips/op_helper.c
/openbmc/qemu/target/mips/translate.c
/openbmc/qemu/target/mips/translate_init.c
/openbmc/qemu/target/ppc/arch_dump.c
/openbmc/qemu/target/ppc/translate_init.c
/openbmc/qemu/target/s390x/arch_dump.c
/openbmc/qemu/target/s390x/cpu-qom.h
/openbmc/qemu/target/s390x/cpu.c
/openbmc/qemu/target/s390x/cpu.h
/openbmc/qemu/target/s390x/cpu_models.c
/openbmc/qemu/target/s390x/cpu_models.h
/openbmc/qemu/target/s390x/diag.c
/openbmc/qemu/target/s390x/excp_helper.c
/openbmc/qemu/target/s390x/helper.c
/openbmc/qemu/target/s390x/internal.h
/openbmc/qemu/target/s390x/kvm.c
/openbmc/qemu/target/s390x/misc_helper.c
/openbmc/qemu/target/s390x/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target.inc.c
/openbmc/qemu/tcg/arm/tcg-target.inc.c
/openbmc/qemu/tcg/i386/tcg-target.inc.c
/openbmc/qemu/tcg/mips/tcg-target.inc.c
/openbmc/qemu/tcg/ppc/tcg-target.inc.c
/openbmc/qemu/tcg/s390/tcg-target.inc.c
/openbmc/qemu/tcg/sparc/tcg-target.inc.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tcg.h
/openbmc/qemu/tcg/tci/tcg-target.inc.c
/openbmc/qemu/tests/Makefile.include
/openbmc/qemu/tests/docker/Makefile.include
/openbmc/qemu/tests/drive_del-test.c
/openbmc/qemu/tests/libqos/pci.c
/openbmc/qemu/tests/libqos/usb.c
/openbmc/qemu/tests/libqos/virtio.c
/openbmc/qemu/tests/libqos/virtio.h
/openbmc/qemu/tests/libqtest.c
/openbmc/qemu/tests/libqtest.h
/openbmc/qemu/tests/numa-test.c
/openbmc/qemu/tests/ptimer-test-stubs.c
/openbmc/qemu/tests/qemu-iotests/051.pc.out
/openbmc/qemu/tests/qemu-iotests/172.out
/openbmc/qemu/tests/test-hmp.c
/openbmc/qemu/tests/test-qga.c
/openbmc/qemu/tests/usb-hcd-uhci-test.c
/openbmc/qemu/tests/usb-hcd-xhci-test.c
/openbmc/qemu/tests/virtio-scsi-test.c
/openbmc/qemu/tests/virtio-serial-test.c
/openbmc/qemu/trace/control-target.c
/openbmc/qemu/trace/control.c
/openbmc/qemu/trace/simple.c
/openbmc/qemu/ui/keymaps.c
/openbmc/qemu/ui/spice-display.c
/openbmc/qemu/util/cutils.c
/openbmc/qemu/util/main-loop.c
/openbmc/qemu/vl.c
d535f5d315-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.11-20170915' into staging

ppc patch queue 2017-09-15

Here's the current batch of accumulated ppc patches. These are all
pretty simple b

Merge remote-tracking branch 'remotes/dgibson/tags/ppc-for-2.11-20170915' into staging

ppc patch queue 2017-09-15

Here's the current batch of accumulated ppc patches. These are all
pretty simple bugfixes or cleanups, no big new features here.

# gpg: Signature made Fri 15 Sep 2017 04:50:00 BST
# gpg: using RSA key 0x6C38CACA20D9B392
# gpg: Good signature from "David Gibson <david@gibson.dropbear.id.au>"
# gpg: aka "David Gibson (Red Hat) <dgibson@redhat.com>"
# gpg: aka "David Gibson (ozlabs.org) <dgibson@ozlabs.org>"
# gpg: aka "David Gibson (kernel.org) <dwg@kernel.org>"
# Primary key fingerprint: 75F4 6586 AE61 A66C C44E 87DC 6C38 CACA 20D9 B392

* remotes/dgibson/tags/ppc-for-2.11-20170915:
ppc/kvm: use kvm_vm_check_extension() in kvmppc_is_pr()
spapr_events: use QTAILQ_FOREACH_SAFE() in spapr_clear_pending_events()
spapr_cpu_core: cleaning up qdev_get_machine() calls
spapr_pci: don't create 64-bit MMIO window if we don't need to
spapr_pci: convert sprintf() to g_strdup_printf()
spapr_cpu_core: fail gracefully with non-pseries machine types
xics: fix several error leaks
vfio, spapr: Fix levels calculation
spapr_pci: handle FDT creation errors with _FDT()
spapr_pci: use the common _FDT() helper
spapr: fix CAS-generated reset
ppc/xive: fix OV5_XIVE_EXPLOIT bits
spapr: only update SDR1 once per-cpu during CAS
spapr_pci: use g_strdup_printf()
spapr_pci: drop useless check in spapr_populate_pci_child_dt()
spapr_pci: drop useless check in spapr_phb_vfio_get_loc_code()
hw/ppc/spapr.c: cleaning up qdev_get_machine() calls
net: Add SunGEM device emulation as found on Apple UniNorth

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

show more ...

a1a6bbde11-Sep-2017 Greg Kurz <groug@kaod.org>

xics: fix several error leaks

If object_property_get_link() fails then it allocates an error, which
must be freed before returning. The error_get_pretty() function is
merely an accessor to the error

xics: fix several error leaks

If object_property_get_link() fails then it allocates an error, which
must be freed before returning. The error_get_pretty() function is
merely an accessor to the error message and doesn't free anything.

The error.h header indicates how to do it right:

* Pass an existing error to the caller with the message modified:
* error_propagate(errp, err);
* error_prepend(errp, "Could not frobnicate '%s': ", name);

Signed-off-by: Greg Kurz <groug@kaod.org>
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>

show more ...


/openbmc/qemu/.gitmodules
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/tcg/Makefile.objs
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/block/nbd-client.c
/openbmc/qemu/configure
/openbmc/qemu/contrib/libvhost-user/libvhost-user.c
/openbmc/qemu/contrib/libvhost-user/libvhost-user.h
/openbmc/qemu/default-configs/ppc-softmmu.mak
/openbmc/qemu/default-configs/ppc64-softmmu.mak
/openbmc/qemu/default-configs/ppcemb-softmmu.mak
/openbmc/qemu/disas.c
/openbmc/qemu/disas/Makefile.objs
/openbmc/qemu/disas/i386.c
/openbmc/qemu/docs/colo-proxy.txt
/openbmc/qemu/docs/pcie.txt
/openbmc/qemu/docs/pcie_pci_bridge.txt
/openbmc/qemu/dump.c
/openbmc/qemu/hmp-commands-info.hx
/openbmc/qemu/hmp.c
/openbmc/qemu/hmp.h
/openbmc/qemu/hw/acpi/bios-linker-loader.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/collie.c
/openbmc/qemu/hw/arm/cubieboard.c
/openbmc/qemu/hw/arm/digic_boards.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/gumstix.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/imx25_pdk.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/kzm.c
/openbmc/qemu/hw/arm/mainstone.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/netduino2.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap_sx1.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/raspi.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/tosa.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/xlnx-ep108.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/display/qxl-render.c
/openbmc/qemu/hw/display/vga-helpers.h
/openbmc/qemu/hw/display/vga.c
/openbmc/qemu/hw/display/vga_int.h
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/i2c/Makefile.objs
/openbmc/qemu/hw/i2c/ppc4xx_i2c.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
xics.c
/openbmc/qemu/hw/mem/pc-dimm.c
/openbmc/qemu/hw/net/Makefile.objs
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000_regs.h
/openbmc/qemu/hw/net/e1000e_core.c
/openbmc/qemu/hw/net/e1000x_common.h
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rocker/rocker_desc.c
/openbmc/qemu/hw/net/rocker/rocker_fp.c
/openbmc/qemu/hw/net/rocker/rocker_of_dpa.c
/openbmc/qemu/hw/net/rocker/rocker_world.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/net/sungem.c
/openbmc/qemu/hw/net/trace-events
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/nvram/spapr_nvram.c
/openbmc/qemu/hw/pci-bridge/Makefile.objs
/openbmc/qemu/hw/pci-bridge/gen_pcie_root_port.c
/openbmc/qemu/hw/pci-bridge/pcie_pci_bridge.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pci_bridge.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc405.h
/openbmc/qemu/hw/ppc/ppc405_uc.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_events.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_iommu.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/usb/Makefile.objs
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/vfio/spapr.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/include/block/nbd.h
/openbmc/qemu/include/elf.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/hw/acpi/bios-linker-loader.h
/openbmc/qemu/include/hw/acpi/vmgenid.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/i2c/ppc4xx_i2c.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/loader.h
/openbmc/qemu/include/hw/mem/pc-dimm.h
/openbmc/qemu/include/hw/nvram/fw_cfg.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_bridge.h
/openbmc/qemu/include/hw/pci/pci_bus.h
/openbmc/qemu/include/hw/pci/pci_ids.h
/openbmc/qemu/include/hw/pci/pcie_port.h
/openbmc/qemu/include/hw/ppc/ppc4xx.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/ppc/spapr_drc.h
/openbmc/qemu/include/hw/ppc/spapr_ovec.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/qemu/host-utils.h
/openbmc/qemu/include/qemu/sockets.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/qom/cpu.h
/openbmc/qemu/include/sysemu/iothread.h
/openbmc/qemu/include/sysemu/numa.h
/openbmc/qemu/io/channel.c
/openbmc/qemu/iothread.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/page_cache.c
/openbmc/qemu/migration/page_cache.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/monitor.c
/openbmc/qemu/nbd/common.c
/openbmc/qemu/nbd/nbd-internal.h
/openbmc/qemu/net/colo-compare.c
/openbmc/qemu/net/filter-rewriter.c
/openbmc/qemu/net/net.c
/openbmc/qemu/net/socket.c
/openbmc/qemu/numa.c
/openbmc/qemu/pc-bios/openbios-ppc
/openbmc/qemu/pc-bios/openbios-sparc32
/openbmc/qemu/pc-bios/openbios-sparc64
/openbmc/qemu/qapi-schema.json
/openbmc/qemu/qmp.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/roms/openbios
/openbmc/qemu/scripts/device-crash-test
/openbmc/qemu/stubs/Makefile.objs
/openbmc/qemu/stubs/pci-host-piix.c
/openbmc/qemu/stubs/qmp_pc_dimm.c
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/alpha/cpu.h
/openbmc/qemu/target/alpha/helper.c
/openbmc/qemu/target/alpha/mem_helper.c
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/arch_dump.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/helper.h
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/machine.c
/openbmc/qemu/target/arm/op_helper.c
/openbmc/qemu/target/arm/translate-a64.c
/openbmc/qemu/target/arm/translate.c
/openbmc/qemu/target/arm/translate.h
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/translate.c
/openbmc/qemu/target/lm32/translate.c
/openbmc/qemu/target/m68k/fpu_helper.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/arch_dump.c
/openbmc/qemu/target/ppc/cpu-models.c
/openbmc/qemu/target/ppc/cpu-models.h
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/kvm_ppc.h
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/translate_init.c
/openbmc/qemu/target/s390x/translate.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/unicore32/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/aarch64/tcg-target.inc.c
/openbmc/qemu/tcg/arm/tcg-target.h
/openbmc/qemu/tcg/arm/tcg-target.inc.c
/openbmc/qemu/tcg/i386/tcg-target.h
/openbmc/qemu/tcg/i386/tcg-target.inc.c
/openbmc/qemu/tcg/mips/tcg-target.h
/openbmc/qemu/tcg/mips/tcg-target.inc.c
/openbmc/qemu/tcg/ppc/tcg-target.h
/openbmc/qemu/tcg/ppc/tcg-target.inc.c
/openbmc/qemu/tcg/s390/tcg-target.h
/openbmc/qemu/tcg/s390/tcg-target.inc.c
/openbmc/qemu/tcg/sparc/tcg-target.h
/openbmc/qemu/tcg/sparc/tcg-target.inc.c
/openbmc/qemu/tcg/tcg-ldst.inc.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg-pool.inc.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tcg.h
/openbmc/qemu/tcg/tci/tcg-target.h
/openbmc/qemu/tcg/tci/tcg-target.inc.c
/openbmc/qemu/tests/qemu-iotests/068
/openbmc/qemu/tests/qemu-iotests/068.out
/openbmc/qemu/tests/qemu-iotests/083.out
/openbmc/qemu/tests/qemu-iotests/192
/openbmc/qemu/tests/qemu-iotests/194
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/test-hmp.c
/openbmc/qemu/tests/vhost-user-bridge.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/qemu-pixman.c
/openbmc/qemu/util/cacheinfo.c
/openbmc/qemu/vl.c
22a9c26a14-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Don't apply group priority mask to negative priorities

In several places we were unconditionally applying the
nvic_gprio_mask() to a priority value. This is incorrect
if the priority is one of

nvic: Don't apply group priority mask to negative priorities

In several places we were unconditionally applying the
nvic_gprio_mask() to a priority value. This is incorrect
if the priority is one of the fixed negative priority
values (for NMI and HardFault), so don't do it.

This bug would have caused both NMI and HardFault to be
considered as the same priority and so NMI wouldn't
correctly preempt HardFault.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1505137930-13255-5-git-send-email-peter.maydell@linaro.org

show more ...


/openbmc/qemu/.gitmodules
/openbmc/qemu/MAINTAINERS
/openbmc/qemu/Makefile
/openbmc/qemu/accel/tcg/Makefile.objs
/openbmc/qemu/accel/tcg/cpu-exec.c
/openbmc/qemu/accel/tcg/translate-all.c
/openbmc/qemu/accel/tcg/translator.c
/openbmc/qemu/block/nbd-client.c
/openbmc/qemu/configure
/openbmc/qemu/contrib/libvhost-user/libvhost-user.c
/openbmc/qemu/contrib/libvhost-user/libvhost-user.h
/openbmc/qemu/default-configs/ppc-softmmu.mak
/openbmc/qemu/default-configs/ppc64-softmmu.mak
/openbmc/qemu/default-configs/ppcemb-softmmu.mak
/openbmc/qemu/disas.c
/openbmc/qemu/disas/Makefile.objs
/openbmc/qemu/disas/i386.c
/openbmc/qemu/docs/colo-proxy.txt
/openbmc/qemu/docs/pcie.txt
/openbmc/qemu/docs/pcie_pci_bridge.txt
/openbmc/qemu/dump.c
/openbmc/qemu/hmp-commands-info.hx
/openbmc/qemu/hmp.c
/openbmc/qemu/hmp.h
/openbmc/qemu/hw/acpi/bios-linker-loader.c
/openbmc/qemu/hw/acpi/pcihp.c
/openbmc/qemu/hw/acpi/piix4.c
/openbmc/qemu/hw/acpi/vmgenid.c
/openbmc/qemu/hw/arm/aspeed.c
/openbmc/qemu/hw/arm/collie.c
/openbmc/qemu/hw/arm/cubieboard.c
/openbmc/qemu/hw/arm/digic_boards.c
/openbmc/qemu/hw/arm/exynos4_boards.c
/openbmc/qemu/hw/arm/gumstix.c
/openbmc/qemu/hw/arm/highbank.c
/openbmc/qemu/hw/arm/imx25_pdk.c
/openbmc/qemu/hw/arm/integratorcp.c
/openbmc/qemu/hw/arm/kzm.c
/openbmc/qemu/hw/arm/mainstone.c
/openbmc/qemu/hw/arm/musicpal.c
/openbmc/qemu/hw/arm/netduino2.c
/openbmc/qemu/hw/arm/nseries.c
/openbmc/qemu/hw/arm/omap_sx1.c
/openbmc/qemu/hw/arm/palm.c
/openbmc/qemu/hw/arm/raspi.c
/openbmc/qemu/hw/arm/realview.c
/openbmc/qemu/hw/arm/sabrelite.c
/openbmc/qemu/hw/arm/spitz.c
/openbmc/qemu/hw/arm/stellaris.c
/openbmc/qemu/hw/arm/tosa.c
/openbmc/qemu/hw/arm/versatilepb.c
/openbmc/qemu/hw/arm/vexpress.c
/openbmc/qemu/hw/arm/xilinx_zynq.c
/openbmc/qemu/hw/arm/xlnx-ep108.c
/openbmc/qemu/hw/arm/z2.c
/openbmc/qemu/hw/core/loader.c
/openbmc/qemu/hw/display/qxl-render.c
/openbmc/qemu/hw/display/vga-helpers.h
/openbmc/qemu/hw/display/vga.c
/openbmc/qemu/hw/display/vga_int.h
/openbmc/qemu/hw/display/virtio-gpu.c
/openbmc/qemu/hw/i2c/Makefile.objs
/openbmc/qemu/hw/i2c/ppc4xx_i2c.c
/openbmc/qemu/hw/i386/acpi-build.c
/openbmc/qemu/hw/i386/intel_iommu.c
/openbmc/qemu/hw/i386/pc_piix.c
/openbmc/qemu/hw/i386/pc_q35.c
armv7m_nvic.c
/openbmc/qemu/hw/mem/pc-dimm.c
/openbmc/qemu/hw/net/e1000.c
/openbmc/qemu/hw/net/e1000_regs.h
/openbmc/qemu/hw/net/e1000e_core.c
/openbmc/qemu/hw/net/e1000x_common.h
/openbmc/qemu/hw/net/rocker/rocker.c
/openbmc/qemu/hw/net/rocker/rocker_desc.c
/openbmc/qemu/hw/net/rocker/rocker_fp.c
/openbmc/qemu/hw/net/rocker/rocker_of_dpa.c
/openbmc/qemu/hw/net/rocker/rocker_world.c
/openbmc/qemu/hw/net/rtl8139.c
/openbmc/qemu/hw/nvram/fw_cfg.c
/openbmc/qemu/hw/nvram/spapr_nvram.c
/openbmc/qemu/hw/pci-bridge/Makefile.objs
/openbmc/qemu/hw/pci-bridge/gen_pcie_root_port.c
/openbmc/qemu/hw/pci-bridge/pcie_pci_bridge.c
/openbmc/qemu/hw/pci/pci.c
/openbmc/qemu/hw/pci/pci_bridge.c
/openbmc/qemu/hw/ppc/e500.c
/openbmc/qemu/hw/ppc/ppc.c
/openbmc/qemu/hw/ppc/ppc405.h
/openbmc/qemu/hw/ppc/ppc405_uc.c
/openbmc/qemu/hw/ppc/ppc4xx_devs.c
/openbmc/qemu/hw/ppc/spapr.c
/openbmc/qemu/hw/ppc/spapr_cpu_core.c
/openbmc/qemu/hw/ppc/spapr_drc.c
/openbmc/qemu/hw/ppc/spapr_events.c
/openbmc/qemu/hw/ppc/spapr_hcall.c
/openbmc/qemu/hw/ppc/spapr_iommu.c
/openbmc/qemu/hw/ppc/spapr_pci.c
/openbmc/qemu/hw/ppc/spapr_rtas.c
/openbmc/qemu/hw/usb/Makefile.objs
/openbmc/qemu/hw/usb/hcd-xhci.c
/openbmc/qemu/hw/virtio/vhost.c
/openbmc/qemu/include/block/nbd.h
/openbmc/qemu/include/elf.h
/openbmc/qemu/include/exec/exec-all.h
/openbmc/qemu/include/exec/translator.h
/openbmc/qemu/include/hw/acpi/bios-linker-loader.h
/openbmc/qemu/include/hw/acpi/vmgenid.h
/openbmc/qemu/include/hw/boards.h
/openbmc/qemu/include/hw/compat.h
/openbmc/qemu/include/hw/i2c/ppc4xx_i2c.h
/openbmc/qemu/include/hw/i386/pc.h
/openbmc/qemu/include/hw/loader.h
/openbmc/qemu/include/hw/mem/pc-dimm.h
/openbmc/qemu/include/hw/nvram/fw_cfg.h
/openbmc/qemu/include/hw/pci/pci.h
/openbmc/qemu/include/hw/pci/pci_bridge.h
/openbmc/qemu/include/hw/pci/pci_bus.h
/openbmc/qemu/include/hw/pci/pcie_port.h
/openbmc/qemu/include/hw/ppc/ppc4xx.h
/openbmc/qemu/include/hw/ppc/spapr.h
/openbmc/qemu/include/hw/ppc/spapr_drc.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/qemu/host-utils.h
/openbmc/qemu/include/qemu/sockets.h
/openbmc/qemu/include/qemu/typedefs.h
/openbmc/qemu/include/qom/cpu.h
/openbmc/qemu/include/sysemu/iothread.h
/openbmc/qemu/include/sysemu/numa.h
/openbmc/qemu/io/channel.c
/openbmc/qemu/iothread.c
/openbmc/qemu/migration/migration.c
/openbmc/qemu/migration/page_cache.c
/openbmc/qemu/migration/page_cache.h
/openbmc/qemu/migration/savevm.c
/openbmc/qemu/migration/trace-events
/openbmc/qemu/monitor.c
/openbmc/qemu/nbd/common.c
/openbmc/qemu/nbd/nbd-internal.h
/openbmc/qemu/net/colo-compare.c
/openbmc/qemu/net/filter-rewriter.c
/openbmc/qemu/net/net.c
/openbmc/qemu/net/socket.c
/openbmc/qemu/numa.c
/openbmc/qemu/pc-bios/openbios-ppc
/openbmc/qemu/pc-bios/openbios-sparc32
/openbmc/qemu/pc-bios/openbios-sparc64
/openbmc/qemu/qapi-schema.json
/openbmc/qemu/qmp.c
/openbmc/qemu/qom/cpu.c
/openbmc/qemu/roms/openbios
/openbmc/qemu/scripts/device-crash-test
/openbmc/qemu/stubs/Makefile.objs
/openbmc/qemu/stubs/pci-host-piix.c
/openbmc/qemu/stubs/qmp_pc_dimm.c
/openbmc/qemu/target/alpha/cpu.c
/openbmc/qemu/target/alpha/cpu.h
/openbmc/qemu/target/alpha/helper.c
/openbmc/qemu/target/alpha/mem_helper.c
/openbmc/qemu/target/alpha/translate.c
/openbmc/qemu/target/arm/arch_dump.c
/openbmc/qemu/target/arm/cpu.c
/openbmc/qemu/target/arm/cpu.h
/openbmc/qemu/target/arm/helper.c
/openbmc/qemu/target/arm/helper.h
/openbmc/qemu/target/arm/internals.h
/openbmc/qemu/target/arm/machine.c
/openbmc/qemu/target/arm/op_helper.c
/openbmc/qemu/target/arm/translate-a64.c
/openbmc/qemu/target/arm/translate.c
/openbmc/qemu/target/arm/translate.h
/openbmc/qemu/target/cris/translate.c
/openbmc/qemu/target/hppa/translate.c
/openbmc/qemu/target/i386/translate.c
/openbmc/qemu/target/lm32/translate.c
/openbmc/qemu/target/m68k/fpu_helper.c
/openbmc/qemu/target/m68k/translate.c
/openbmc/qemu/target/microblaze/translate.c
/openbmc/qemu/target/nios2/translate.c
/openbmc/qemu/target/openrisc/translate.c
/openbmc/qemu/target/ppc/arch_dump.c
/openbmc/qemu/target/ppc/cpu-models.c
/openbmc/qemu/target/ppc/cpu-models.h
/openbmc/qemu/target/ppc/cpu.h
/openbmc/qemu/target/ppc/kvm.c
/openbmc/qemu/target/ppc/kvm_ppc.h
/openbmc/qemu/target/ppc/mmu_helper.c
/openbmc/qemu/target/ppc/translate_init.c
/openbmc/qemu/target/s390x/translate.c
/openbmc/qemu/target/sparc/cpu.h
/openbmc/qemu/target/unicore32/translate.c
/openbmc/qemu/target/xtensa/translate.c
/openbmc/qemu/tcg/aarch64/tcg-target.h
/openbmc/qemu/tcg/aarch64/tcg-target.inc.c
/openbmc/qemu/tcg/arm/tcg-target.h
/openbmc/qemu/tcg/arm/tcg-target.inc.c
/openbmc/qemu/tcg/i386/tcg-target.h
/openbmc/qemu/tcg/i386/tcg-target.inc.c
/openbmc/qemu/tcg/mips/tcg-target.h
/openbmc/qemu/tcg/mips/tcg-target.inc.c
/openbmc/qemu/tcg/ppc/tcg-target.h
/openbmc/qemu/tcg/ppc/tcg-target.inc.c
/openbmc/qemu/tcg/s390/tcg-target.h
/openbmc/qemu/tcg/s390/tcg-target.inc.c
/openbmc/qemu/tcg/sparc/tcg-target.h
/openbmc/qemu/tcg/sparc/tcg-target.inc.c
/openbmc/qemu/tcg/tcg-ldst.inc.c
/openbmc/qemu/tcg/tcg-op.c
/openbmc/qemu/tcg/tcg-pool.inc.c
/openbmc/qemu/tcg/tcg.c
/openbmc/qemu/tcg/tcg.h
/openbmc/qemu/tcg/tci/tcg-target.h
/openbmc/qemu/tcg/tci/tcg-target.inc.c
/openbmc/qemu/tests/qemu-iotests/068
/openbmc/qemu/tests/qemu-iotests/068.out
/openbmc/qemu/tests/qemu-iotests/083.out
/openbmc/qemu/tests/qemu-iotests/192
/openbmc/qemu/tests/qemu-iotests/194
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/test-hmp.c
/openbmc/qemu/tests/vhost-user-bridge.c
/openbmc/qemu/ui/console.c
/openbmc/qemu/ui/qemu-pixman.c
/openbmc/qemu/util/cacheinfo.c
/openbmc/qemu/vl.c
334e8dad07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make CFSR register banked for v8M

Make the CFSR register banked if v8M security extensions are enabled.

Not all the bits in this register are banked: the BFSR
bits [15:8] are shared bet

target/arm: Make CFSR register banked for v8M

Make the CFSR register banked if v8M security extensions are enabled.

Not all the bits in this register are banked: the BFSR
bits [15:8] are shared between S and NS, and we store them
in the NS copy of the register.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-19-git-send-email-peter.maydell@linaro.org

show more ...

c51a5cfc07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make MMFAR banked for v8M

Make the MMFAR register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <

target/arm: Make MMFAR banked for v8M

Make the MMFAR register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-18-git-send-email-peter.maydell@linaro.org

show more ...

9d40cd8a07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make CCR register banked for v8M

Make the CCR register banked if v8M security extensions are enabled.

This is slightly more complicated than the other "add banking"
patches because ther

target/arm: Make CCR register banked for v8M

Make the CCR register banked if v8M security extensions are enabled.

This is slightly more complicated than the other "add banking"
patches because there is one bit in the register which is not
banked. We keep the live data in the NS copy of the register,
and adjust it on register reads and writes. (Since we don't
currently implement the behaviour that the bit controls, there
is nowhere else that needs to care.)

This patch includes the enforcement of the bits which are newly
RES1 in ARMv8M.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1503414539-28762-17-git-send-email-peter.maydell@linaro.org

show more ...

ecf5e8ea07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make MPU_CTRL register banked for v8M

Make the MPU_CTRL register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Rich

target/arm: Make MPU_CTRL register banked for v8M

Make the MPU_CTRL register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-16-git-send-email-peter.maydell@linaro.org

show more ...

1bc04a8807-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make MPU_RNR register banked for v8M

Make the MPU_RNR register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richar

target/arm: Make MPU_RNR register banked for v8M

Make the MPU_RNR register banked if v8M security extensions are
enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-15-git-send-email-peter.maydell@linaro.org

show more ...

62c58ee007-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make MPU_RBAR, MPU_RLAR banked for v8M

Make the MPU registers MPU_MAIR0 and MPU_MAIR1 banked if v8M security
extensions are enabled.

We can freely add more items to vmstate_m_security w

target/arm: Make MPU_RBAR, MPU_RLAR banked for v8M

Make the MPU registers MPU_MAIR0 and MPU_MAIR1 banked if v8M security
extensions are enabled.

We can freely add more items to vmstate_m_security without
breaking migration compatibility, because no CPU currently
has the ARM_FEATURE_M_SECURITY bit enabled and so this
subsection is not yet used by anything.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-14-git-send-email-peter.maydell@linaro.org

show more ...

4125e6fe07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make MPU_MAIR0, MPU_MAIR1 registers banked for v8M

Make the MPU registers MPU_MAIR0 and MPU_MAIR1 banked if v8M security
extensions are enabled.

Signed-off-by: Peter Maydell <peter.mayd

target/arm: Make MPU_MAIR0, MPU_MAIR1 registers banked for v8M

Make the MPU registers MPU_MAIR0 and MPU_MAIR1 banked if v8M security
extensions are enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-13-git-send-email-peter.maydell@linaro.org

show more ...

45db7ba607-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make VTOR register banked for v8M

Make the VTOR register banked if v8M security extensions are enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Hend

target/arm: Make VTOR register banked for v8M

Make the VTOR register banked if v8M security extensions are enabled.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-12-git-send-email-peter.maydell@linaro.org

show more ...

f104919d07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Add NS alias SCS region

For v8M the range 0xe002e000..0xe002efff is an alias region which
for secure accesses behaves like a NonSecure access to the main
SCS region. (For nonsecure accesses in

nvic: Add NS alias SCS region

For v8M the range 0xe002e000..0xe002efff is an alias region which
for secure accesses behaves like a NonSecure access to the main
SCS region. (For nonsecure accesses including when the security
extension is not implemented, it is RAZ/WI.)

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-id: 1503414539-28762-11-git-send-email-peter.maydell@linaro.org

show more ...

42a6686b07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make FAULTMASK register banked for v8M

Make the FAULTMASK register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PR

target/arm: Make FAULTMASK register banked for v8M

Make the FAULTMASK register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PRIS bit (which allows the effect of the NS copy of FAULTMASK to
be restricted).

This patch includes the code to determine for v8M which copy
of FAULTMASK should be updated on exception exit; further
changes will be required to the exception exit code in general
to support v8M, so this is just a small piece of that.

The v8M ARM ARM introduces a notation where individual paragraphs
are labelled with R (for rule) or I (for information) followed
by a random group of subscript letters. In comments where we want
to refer to a particular part of the manual we use this convention,
which should be more stable across document revisions than using
section or page numbers.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-9-git-send-email-peter.maydell@linaro.org

show more ...

6d80483407-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make PRIMASK register banked for v8M

Make the PRIMASK register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PRIS b

target/arm: Make PRIMASK register banked for v8M

Make the PRIMASK register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PRIS bit (which allows the effect of the NS copy of PRIMASK to
be restricted).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-8-git-send-email-peter.maydell@linaro.org

show more ...

acf9494107-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Make BASEPRI register banked for v8M

Make the BASEPRI register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PRIS b

target/arm: Make BASEPRI register banked for v8M

Make the BASEPRI register banked if v8M security extensions are enabled.

Note that we do not yet implement the functionality of the new
AIRCR.PRIS bit (which allows the effect of the NS copy of BASEPRI to
be restricted).

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-7-git-send-email-peter.maydell@linaro.org

show more ...

0e1a46bb07-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

target/arm: Implement ARMv8M's PMSAv8 registers

As part of ARMv8M, we need to add support for the PMSAv8 MPU
architecture.

PMSAv8 differs from PMSAv7 both in register/data layout (for instance
usin

target/arm: Implement ARMv8M's PMSAv8 registers

As part of ARMv8M, we need to add support for the PMSAv8 MPU
architecture.

PMSAv8 differs from PMSAv7 both in register/data layout (for instance
using base and limit registers rather than base and size) and also in
behaviour (for example it does not have subregions); rather than
trying to wedge it into the existing PMSAv7 code and data structures,
we define separate ones.

This commit adds the data structures which hold the state for a
PMSAv8 MPU and the register interface to it. The implementation of
the MPU behaviour will be added in a subsequent commit.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1503414539-28762-2-git-send-email-peter.maydell@linaro.org

show more ...

9ea26c7007-Sep-2017 Fam Zheng <famz@redhat.com>

gicv3: Convert to DEFINE_PROP_LINK

Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 20170905131149.10669-4-famz@redhat.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by:

gicv3: Convert to DEFINE_PROP_LINK

Signed-off-by: Fam Zheng <famz@redhat.com>
Message-id: 20170905131149.10669-4-famz@redhat.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

show more ...


/openbmc/qemu/block.c
/openbmc/qemu/block/Makefile.objs
/openbmc/qemu/block/blkdebug.c
/openbmc/qemu/block/block-backend.c
/openbmc/qemu/block/commit.c
/openbmc/qemu/block/io.c
/openbmc/qemu/block/mirror.c
/openbmc/qemu/block/qapi.c
/openbmc/qemu/block/qcow.c
/openbmc/qemu/block/qcow2.c
/openbmc/qemu/block/raw-format.c
/openbmc/qemu/block/sheepdog.c
/openbmc/qemu/block/ssh.c
/openbmc/qemu/block/throttle-groups.c
/openbmc/qemu/block/throttle.c
/openbmc/qemu/blockdev.c
/openbmc/qemu/fsdev/virtfs-proxy-helper.c
/openbmc/qemu/hw/9pfs/9p-local.c
/openbmc/qemu/hw/9pfs/9p.c
/openbmc/qemu/hw/arm/armv7m.c
arm_gicv3_its_kvm.c
/openbmc/qemu/hw/pci-host/apb.c
/openbmc/qemu/hw/sparc64/sun4u.c
/openbmc/qemu/include/block/block.h
/openbmc/qemu/include/block/block_int.h
/openbmc/qemu/include/block/throttle-groups.h
/openbmc/qemu/include/io/channel.h
/openbmc/qemu/include/qemu/iov.h
/openbmc/qemu/include/qemu/sockets.h
/openbmc/qemu/include/qemu/throttle-options.h
/openbmc/qemu/include/qemu/throttle.h
/openbmc/qemu/include/sysemu/block-backend.h
/openbmc/qemu/io/channel-socket.c
/openbmc/qemu/io/channel.c
/openbmc/qemu/linux-headers/asm-x86/kvm.h
/openbmc/qemu/qapi/block-core.json
/openbmc/qemu/scripts/qemu.py
/openbmc/qemu/tests/benchmark-crypto-cipher.c
/openbmc/qemu/tests/benchmark-crypto-hash.c
/openbmc/qemu/tests/benchmark-crypto-hmac.c
/openbmc/qemu/tests/crypto-tls-x509-helpers.c
/openbmc/qemu/tests/io-channel-helpers.c
/openbmc/qemu/tests/qemu-iotests/184
/openbmc/qemu/tests/qemu-iotests/184.out
/openbmc/qemu/tests/qemu-iotests/194
/openbmc/qemu/tests/qemu-iotests/group
/openbmc/qemu/tests/qemu-iotests/iotests.py
/openbmc/qemu/tests/test-io-channel-tls.c
/openbmc/qemu/tests/test-iov.c
/openbmc/qemu/tests/test-throttle.c
/openbmc/qemu/tests/vhost-user-test.c
/openbmc/qemu/tests/vmgenid-test.c
/openbmc/qemu/util/qemu-sockets.c
/openbmc/qemu/util/throttle.c
/openbmc/qemu/vl.c
7229ec5804-Sep-2017 Pranith Kumar <bobby.prani@gmail.com>

arm_gicv3_kvm: Fix compile warning

Fix the following warning:

/home/pranith/qemu/hw/intc/arm_gicv3_kvm.c:296:17: warning: logical not is only applied to the left hand side of this bitwise operator

arm_gicv3_kvm: Fix compile warning

Fix the following warning:

/home/pranith/qemu/hw/intc/arm_gicv3_kvm.c:296:17: warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]
if (!c->gicr_ctlr & GICR_CTLR_ENABLE_LPIS) {
^ ~
/home/pranith/qemu/hw/intc/arm_gicv3_kvm.c:296:17: note: add parentheses after the '!' to evaluate the bitwise operator first
if (!c->gicr_ctlr & GICR_CTLR_ENABLE_LPIS) {
^
/home/pranith/qemu/hw/intc/arm_gicv3_kvm.c:296:17: note: add parentheses around left hand side expression to silence this warning
if (!c->gicr_ctlr & GICR_CTLR_ENABLE_LPIS) {
^

This logic error meant we were not setting the PTZ
bit when we should -- luckily as the comment suggests
this wouldn't have had any effects beyond making GIC
initialization take a little longer.

Signed-off-by: Pranith Kumar <bobby.prani@gmail.com>
Message-id: 20170829173226.7625-1-bobby.prani@gmail.com
Cc: qemu-stable@nongnu.org
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>

show more ...

eb578a2304-Sep-2017 Peter Maydell <peter.maydell@linaro.org>

nvic: Implement "user accesses BusFault" SCS region behaviour

The ARMv7M architecture specifies that most of the addresses in the
PPB region (which includes the NVIC, systick and system registers)
a

nvic: Implement "user accesses BusFault" SCS region behaviour

The ARMv7M architecture specifies that most of the addresses in the
PPB region (which includes the NVIC, systick and system registers)
are not accessible to unprivileged accesses, which should
BusFault with a few exceptions:
* the STIR is configurably user-accessible
* the ITM (which we don't implement at all) is always
user-accessible

Implement this by switching the register access functions
to the _with_attrs scheme that lets us distinguish user
mode accesses.

This allows us to pull the handling of the CCR.USERSETMPEND
flag up to the level where we can make it generate a BusFault
as it should for non-permitted accesses.

Note that until the core ARM CPU code implements turning
MEMTX_ERROR into a BusFault the registers will continue to
act as RAZ/WI to user accesses.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Edgar E. Iglesias <edgar.iglesias@xilinx.com>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Message-id: 1501692241-23310-16-git-send-email-peter.maydell@linaro.org

show more ...

1...<<51525354555657585960>>...74