Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On Tue, Mar 06, 2018 at 05:56:03PM +, Mark Cave-Ayland wrote: > On 06/03/18 17:47, Thomas Huth wrote: > > > > It seems that the error is being raised when setting the property rather > > > than during realize so I'm not sure what I can do to handle this. Any > > > thoughts? > > > > Does the device need to be hot-pluggable or even user_creatable at all? > > It seems like it is also using serial_hds[] directly, so that is a good > > indication that it is *not* user creatable. So maybe the easiest fix is > > to simply set > > > > dc->user_creatable = false; > > > > in macio_class_init() ? > > (Added Daniel to CC) > > I believe it should fail anyhow during realize because both macio devices > (newworld and oldworld) requires an object link to the PIC which won't be > set when using device_add via the monitor as in your example. > > But it still doesn't quite feel right that just setting a property value > should abort() immediately. Daniel, any thoughts? Setting user_creatable = false is important, as that flag is used to filter the list of permitted devices when doing monitor readline completion for 'device_add' and when printing available devices with '-device ?' Regards, Daniel -- |: https://berrange.com -o-https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o-https://fstop138.berrange.com :| |: https://entangle-photo.org-o-https://www.instagram.com/dberrange :|
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 6 March 2018 at 17:47, Thomas Huth wrote: > Does the device need to be hot-pluggable or even user_creatable at all? > It seems like it is also using serial_hds[] directly, so that is a good > indication that it is *not* user creatable. So maybe the easiest fix is > to simply set > > dc->user_creatable = false; > > in macio_class_init() ? Yes. As Thomas says, if your device is using serial_hds[] directly it is not user creatable. The ideal design here is that the device does not touch serial_hds[] at all, but instead has qdev properties for char devices, which the board model code wires up based on serial_hds[]. (In this case you could make them just be alias properties into the escc object that the macio device creates.) Either way I don't think there's any reason for the device to be user-creatable. thanks -- PMM
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 06/03/18 17:47, Thomas Huth wrote: It seems that the error is being raised when setting the property rather than during realize so I'm not sure what I can do to handle this. Any thoughts? Does the device need to be hot-pluggable or even user_creatable at all? It seems like it is also using serial_hds[] directly, so that is a good indication that it is *not* user creatable. So maybe the easiest fix is to simply set dc->user_creatable = false; in macio_class_init() ? (Added Daniel to CC) I believe it should fail anyhow during realize because both macio devices (newworld and oldworld) requires an object link to the PIC which won't be set when using device_add via the monitor as in your example. But it still doesn't quite feel right that just setting a property value should abort() immediately. Daniel, any thoughts? ATB, Mark.
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 06.03.2018 18:28, Mark Cave-Ayland wrote: > On 06/03/18 16:48, Thomas Huth wrote: > >> Something in the recent commits introduced a new way to cause unexpected >> aborts of QEMU: >> >> $ ppc64-softmmu/qemu-system-ppc64 -monitor stdio >> QEMU 2.11.50 monitor - type 'help' for more information >> (qemu) device_add macio-newworld >> Unexpected error in qemu_chr_fe_init() at >> /home/thuth/devel/qemu/chardev/char-fe.c:222: >> Device 'serial0' is in use >> Aborted (core dumped) >> >> Of course it does not make sense to add a macio-newworld device on the >> pseries machine, but QEMU should not abort in this case - it should just >> print an error message and continue afterwards. Any ideas how to fix >> this? > > So the backtrace from git master looks like this: > > Thread 1 "qemu-system-ppc" received signal SIGABRT, Aborted. > __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 > > > 51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. > > > (gdb) bt > > > #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 > > #1 0x7fffdbd6e3fa in __GI_abort () at abort.c:89 > > > #2 0x55de6d86 in error_handle_fatal (errp=0x56bdfb90 > , err=0x56ef5a00) at util/error.c:38 > > #3 0x55de6eb6 in error_setv (errp=0x56bdfb90 , > src=0x56031ad0 "chardev/char-fe.c", line=222, func=0x56031c50 > <__func__.18713> "qemu_chr_fe_init", err_class=ERROR_CLASS_GENERIC_ERROR, > fmt=0x56031b50 "Device '%s' is in use", ap=0x7fffd010, > suffix=0x0) at util/error.c:71 > > #4 0x55de7097 in error_setg_internal (errp=0x56bdfb90 > , src=0x56031ad0 "chardev/char-fe.c", line=222, > func=0x56031c50 <__func__.18713> "qemu_chr_fe_init", > fmt=0x56031b50 "Device '%s' is in use") at util/error.c:95 > > > #5 0x55d673fc in qemu_chr_fe_init (b=0x57aef590, > s=0x56de2290, errp=0x56bdfb90 ) at > chardev/char-fe.c:222 > #6 0x55af5467 in set_chr (obj=0x57aeef80, v=0x57960c20, > name=0x55f65fc5 "chrA", opaque=0x56658410 , > errp=0x56bdfb90 ) at hw/core/qdev-properties-system.c:216 > #7 0x55cb326a in object_property_set (obj=0x57aeef80, > v=0x57960c20, name=0x55f65fc5 "chrA", errp=0x56bdfb90 > ) at qom/object.c:1109 > #8 0x55cb6232 in object_property_set_qobject > (obj=0x57aeef80, value=0x57960bf0, name=0x55f65fc5 "chrA", > errp=0x56bdfb90 ) at qom/qom-qobject.c:27 > #9 0x55cb32af in object_property_set_str (obj=0x57aeef80, > value=0x56de23c0 "serial0", name=0x55f65fc5 "chrA", > errp=0x56bdfb90 ) at qom/object.c:1117 > #10 0x55af5d94 in qdev_prop_set_chr (dev=0x57aeef80, > name=0x55f65fc5 "chrA", value=0x56de2290) at > hw/core/qdev-properties-system.c:427 > #11 0x55b350a8 in macio_instance_init (obj=0x57aec3c0) at > hw/misc/macio/macio.c:347 > > > It seems that the error is being raised when setting the property rather > than during realize so I'm not sure what I can do to handle this. Any > thoughts? Does the device need to be hot-pluggable or even user_creatable at all? It seems like it is also using serial_hds[] directly, so that is a good indication that it is *not* user creatable. So maybe the easiest fix is to simply set dc->user_creatable = false; in macio_class_init() ? Thomas
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 06/03/18 16:48, Thomas Huth wrote: Something in the recent commits introduced a new way to cause unexpected aborts of QEMU: $ ppc64-softmmu/qemu-system-ppc64 -monitor stdio QEMU 2.11.50 monitor - type 'help' for more information (qemu) device_add macio-newworld Unexpected error in qemu_chr_fe_init() at /home/thuth/devel/qemu/chardev/char-fe.c:222: Device 'serial0' is in use Aborted (core dumped) Of course it does not make sense to add a macio-newworld device on the pseries machine, but QEMU should not abort in this case - it should just print an error message and continue afterwards. Any ideas how to fix this? So the backtrace from git master looks like this: Thread 1 "qemu-system-ppc" received signal SIGABRT, Aborted. __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 51 ../sysdeps/unix/sysv/linux/raise.c: No such file or directory. (gdb) bt #0 __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51 #1 0x7fffdbd6e3fa in __GI_abort () at abort.c:89 #2 0x55de6d86 in error_handle_fatal (errp=0x56bdfb90 , err=0x56ef5a00) at util/error.c:38 #3 0x55de6eb6 in error_setv (errp=0x56bdfb90 , src=0x56031ad0 "chardev/char-fe.c", line=222, func=0x56031c50 <__func__.18713> "qemu_chr_fe_init", err_class=ERROR_CLASS_GENERIC_ERROR, fmt=0x56031b50 "Device '%s' is in use", ap=0x7fffd010, suffix=0x0) at util/error.c:71 #4 0x55de7097 in error_setg_internal (errp=0x56bdfb90 , src=0x56031ad0 "chardev/char-fe.c", line=222, func=0x56031c50 <__func__.18713> "qemu_chr_fe_init", fmt=0x56031b50 "Device '%s' is in use") at util/error.c:95 #5 0x55d673fc in qemu_chr_fe_init (b=0x57aef590, s=0x56de2290, errp=0x56bdfb90 ) at chardev/char-fe.c:222 #6 0x55af5467 in set_chr (obj=0x57aeef80, v=0x57960c20, name=0x55f65fc5 "chrA", opaque=0x56658410 , errp=0x56bdfb90 ) at hw/core/qdev-properties-system.c:216 #7 0x55cb326a in object_property_set (obj=0x57aeef80, v=0x57960c20, name=0x55f65fc5 "chrA", errp=0x56bdfb90 ) at qom/object.c:1109 #8 0x55cb6232 in object_property_set_qobject (obj=0x57aeef80, value=0x57960bf0, name=0x55f65fc5 "chrA", errp=0x56bdfb90 ) at qom/qom-qobject.c:27 #9 0x55cb32af in object_property_set_str (obj=0x57aeef80, value=0x56de23c0 "serial0", name=0x55f65fc5 "chrA", errp=0x56bdfb90 ) at qom/object.c:1117 #10 0x55af5d94 in qdev_prop_set_chr (dev=0x57aeef80, name=0x55f65fc5 "chrA", value=0x56de2290) at hw/core/qdev-properties-system.c:427 #11 0x55b350a8 in macio_instance_init (obj=0x57aec3c0) at hw/misc/macio/macio.c:347 It seems that the error is being raised when setting the property rather than during realize so I'm not sure what I can do to handle this. Any thoughts? ATB, Mark.
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 06.03.2018 05:01, David Gibson wrote: > The following changes since commit f2bb2d14c2958f3f5aef456bd2cdb1ff99f4a562: > > Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' > into staging (2018-03-05 16:41:20 +) > > are available in the Git repository at: > > git://github.com/dgibson/qemu.git tags/ppc-for-2.12-20180306 > > for you to fetch changes up to 21b786f607b11d888f90bbb8c3414500515d11e7: > > PowerPC: Add TS bits into msr_mask (2018-03-06 13:16:29 +1100) > > > ppc patch queue 2018-03-06 > > This pull request supersedes ppc-for-2.12-20180302 which had compile > problems with some gcc versions. It also contains a few additional > patches. > > Highlights are: > * New Sam460ex machine type > * Yet more fixes related to vcpu id allocation for spapr > * Numerous macio cleanupsr > * Some enhancements to the Spectre/Meltdown fixes for pseries, > allowing use of a better mitigation for indirect branch based > exploits > * New pseries machine types with Spectre/Meltdown mitigations > enabled (stop gap until libvirt and management understands the > machine options) > * A handful of other fixes > > > BALATON Zoltan (5): > ppc440_uc: Fix unintialized variable warning with older gcc > ppc440: Add emulation of plb-pcix controller found in some 440 SoCs > roms: Added git submodule for u-boot-sam460 (firmware for sam460ex) > pc-bios: Added u-boot-sam460 firmware binary > ppc: Add aCube Sam460ex board > > David Engraf (1): > PPC: e500: Fix duplicate kernel load and device tree overlap > > Greg Kurz (3): > spapr: fix missing CPU core nodes in DT when running with TCG > spapr: register dummy ICPs later > spapr: harden code that depends on VSMT > > Mark Cave-Ayland (13): > macio: embed DBDMA device directly within macio > macio: move ESCC device within the macio device > heathrow: QOMify heathrow PIC > heathrow: convert to trace-events > heathrow: change heathrow_pic_init() to return the heathrow device > macio: move macio related structures and defines into separate macio.h > file > mac_oldworld: use object link to pass heathrow PIC object to macio > openpic: move KVM-specific declarations into separate openpic_kvm.h file > openpic: move OpenPIC state and related definitions to openpic.h > mac_newworld: use object link to pass OpenPIC object to macio > macio: move setting of CUDA timebase frequency to macio_common_realize() > macio: remove macio_init() function > adb: add trace-events for monitoring keyboard/mouse during bus > enumeration Something in the recent commits introduced a new way to cause unexpected aborts of QEMU: $ ppc64-softmmu/qemu-system-ppc64 -monitor stdio QEMU 2.11.50 monitor - type 'help' for more information (qemu) device_add macio-newworld Unexpected error in qemu_chr_fe_init() at /home/thuth/devel/qemu/chardev/char-fe.c:222: Device 'serial0' is in use Aborted (core dumped) Of course it does not make sense to add a macio-newworld device on the pseries machine, but QEMU should not abort in this case - it should just print an error message and continue afterwards. Any ideas how to fix this? Thomas
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
Hi, This series seems to have some coding style problems. See output below for more information: Type: series Message-id: 20180306040154.3669-1-da...@gibson.dropbear.id.au Subject: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306 === TEST SCRIPT BEGIN === #!/bin/bash BASE=base n=1 total=$(git log --oneline $BASE.. | wc -l) failed=0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram commits="$(git log --format=%H --reverse $BASE..)" for c in $commits; do echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; then failed=1 echo fi n=$((n+1)) done exit $failed === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu * [new tag] patchew/20180306040154.3669-1-da...@gibson.dropbear.id.au -> patchew/20180306040154.3669-1-da...@gibson.dropbear.id.au Switched to a new branch 'test' 710332af72 PowerPC: Add TS bits into msr_mask 1d843d531b adb: add trace-events for monitoring keyboard/mouse during bus enumeration e0dcafa414 PPC: e500: Fix duplicate kernel load and device tree overlap ca32627c89 hw/ppc/spapr, e500: Use new property "stdout-path" for boot console 7ec999efd1 ppc/spapr-caps: Define the pseries-2.12-sxxm machine type c5c9d5e6b5 ppc/spapr-caps: Convert cap-ibs to custom spapr-cap d1f8d2a7ec ppc/spapr-caps: Convert cap-sbbc to custom spapr-cap dee8ac698b ppc/spapr-caps: Convert cap-cfpc to custom spapr-cap be78220976 ppc/spapr-caps: Add support for custom spapr_capabilities 41fe6c3234 target/ppc: Check mask when setting cap_ppc_safe_indirect_branch 925dc8c8ab macio: remove macio_init() function 0cdc7ef4d3 macio: move setting of CUDA timebase frequency to macio_common_realize() 333e2d72ae mac_newworld: use object link to pass OpenPIC object to macio 6352921fc0 openpic: move OpenPIC state and related definitions to openpic.h f6528ecaad openpic: move KVM-specific declarations into separate openpic_kvm.h file ff45ce713e mac_oldworld: use object link to pass heathrow PIC object to macio 7a6c79ea44 macio: move macio related structures and defines into separate macio.h file 314c9858ad heathrow: change heathrow_pic_init() to return the heathrow device f5b91571dc heathrow: convert to trace-events 3045694ed1 heathrow: QOMify heathrow PIC ad17492d9b macio: move ESCC device within the macio device 777c94a3ee macio: embed DBDMA device directly within macio 2ea90e405c spapr: harden code that depends on VSMT 00226ad7c9 spapr: register dummy ICPs later 7ed96e066b ppc: Add aCube Sam460ex board 9abb284ab2 pc-bios: Added u-boot-sam460 firmware binary e4cb279fb1 roms: Added git submodule for u-boot-sam460 (firmware for sam460ex) a2279cf053 ppc440: Add emulation of plb-pcix controller found in some 440 SoCs 3e9afde83e ppc440_uc: Fix unintialized variable warning with older gcc 8e4c18ae65 spapr: fix missing CPU core nodes in DT when running with TCG === OUTPUT BEGIN === Checking PATCH 1/30: spapr: fix missing CPU core nodes in DT when running with TCG... Checking PATCH 2/30: ppc440_uc: Fix unintialized variable warning with older gcc... Checking PATCH 3/30: ppc440: Add emulation of plb-pcix controller found in some 440 SoCs... Checking PATCH 4/30: roms: Added git submodule for u-boot-sam460 (firmware for sam460ex)... Checking PATCH 5/30: pc-bios: Added u-boot-sam460 firmware binary... Checking PATCH 6/30: ppc: Add aCube Sam460ex board... Checking PATCH 7/30: spapr: register dummy ICPs later... Checking PATCH 8/30: spapr: harden code that depends on VSMT... Checking PATCH 9/30: macio: embed DBDMA device directly within macio... Checking PATCH 10/30: macio: move ESCC device within the macio device... Checking PATCH 11/30: heathrow: QOMify heathrow PIC... Checking PATCH 12/30: heathrow: convert to trace-events... Checking PATCH 13/30: heathrow: change heathrow_pic_init() to return the heathrow device... Checking PATCH 14/30: macio: move macio related structures and defines into separate macio.h file... Checking PATCH 15/30: mac_oldworld: use object link to pass heathrow PIC object to macio... Checking PATCH 16/30: openpic: move KVM-specific declarations into separate openpic_kvm.h file... Checking PATCH 17/30: openpic: move OpenPIC state and related definitions to openpic.h... ERROR: "foo * bar" should be "foo *bar" #250: FILE: include/hw/ppc/openpic.h:57: +#define RAVEN_DBL_IRQ(RAVEN_IPI_IRQ + (RAVEN_MAX_CPU * RAVEN_MAX_IPI)) total: 1 errors, 0 warnings, 353 lines checked Your patch has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. Checking PATCH 18/30: mac_newworld: use object link to pass OpenPIC object to macio... Checking PATCH 19/30: macio: move setting of CUDA timebase freq
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On 6 March 2018 at 04:01, David Gibson wrote: > The following changes since commit f2bb2d14c2958f3f5aef456bd2cdb1ff99f4a562: > > Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' > into staging (2018-03-05 16:41:20 +) > > are available in the Git repository at: > > git://github.com/dgibson/qemu.git tags/ppc-for-2.12-20180306 > > for you to fetch changes up to 21b786f607b11d888f90bbb8c3414500515d11e7: > > PowerPC: Add TS bits into msr_mask (2018-03-06 13:16:29 +1100) > > > ppc patch queue 2018-03-06 > > This pull request supersedes ppc-for-2.12-20180302 which had compile > problems with some gcc versions. It also contains a few additional > patches. > > Highlights are: > * New Sam460ex machine type > * Yet more fixes related to vcpu id allocation for spapr > * Numerous macio cleanupsr > * Some enhancements to the Spectre/Meltdown fixes for pseries, > allowing use of a better mitigation for indirect branch based > exploits > * New pseries machine types with Spectre/Meltdown mitigations > enabled (stop gap until libvirt and management understands the > machine options) > * A handful of other fixes > Applied, thanks. -- PMM
Re: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
On Mon, Mar 05, 2018 at 08:30:40PM -0800, no-re...@patchew.org wrote: > Hi, > > This series seems to have some coding style problems. See output below for > more information: > > Type: series > Message-id: 20180306040154.3669-1-da...@gibson.dropbear.id.au > Subject: [Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306 > > === TEST SCRIPT BEGIN === > #!/bin/bash > > BASE=base > n=1 > total=$(git log --oneline $BASE.. | wc -l) > failed=0 > > git config --local diff.renamelimit 0 > git config --local diff.renames True > git config --local diff.algorithm histogram > > commits="$(git log --format=%H --reverse $BASE..)" > for c in $commits; do > echo "Checking PATCH $n/$total: $(git log -n 1 --format=%s $c)..." > if ! git show $c --format=email | ./scripts/checkpatch.pl --mailback -; > then > failed=1 > echo > fi > n=$((n+1)) > done > > exit $failed > === TEST SCRIPT END === > > Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 > From https://github.com/patchew-project/qemu > * [new tag] > patchew/20180306040154.3669-1-da...@gibson.dropbear.id.au -> > patchew/20180306040154.3669-1-da...@gibson.dropbear.id.au > Switched to a new branch 'test' > 710332af72 PowerPC: Add TS bits into msr_mask > 1d843d531b adb: add trace-events for monitoring keyboard/mouse during bus > enumeration > e0dcafa414 PPC: e500: Fix duplicate kernel load and device tree overlap > ca32627c89 hw/ppc/spapr, e500: Use new property "stdout-path" for boot console > 7ec999efd1 ppc/spapr-caps: Define the pseries-2.12-sxxm machine type > c5c9d5e6b5 ppc/spapr-caps: Convert cap-ibs to custom spapr-cap > d1f8d2a7ec ppc/spapr-caps: Convert cap-sbbc to custom spapr-cap > dee8ac698b ppc/spapr-caps: Convert cap-cfpc to custom spapr-cap > be78220976 ppc/spapr-caps: Add support for custom spapr_capabilities > 41fe6c3234 target/ppc: Check mask when setting cap_ppc_safe_indirect_branch > 925dc8c8ab macio: remove macio_init() function > 0cdc7ef4d3 macio: move setting of CUDA timebase frequency to > macio_common_realize() > 333e2d72ae mac_newworld: use object link to pass OpenPIC object to macio > 6352921fc0 openpic: move OpenPIC state and related definitions to openpic.h > f6528ecaad openpic: move KVM-specific declarations into separate > openpic_kvm.h file > ff45ce713e mac_oldworld: use object link to pass heathrow PIC object to macio > 7a6c79ea44 macio: move macio related structures and defines into separate > macio.h file > 314c9858ad heathrow: change heathrow_pic_init() to return the heathrow device > f5b91571dc heathrow: convert to trace-events > 3045694ed1 heathrow: QOMify heathrow PIC > ad17492d9b macio: move ESCC device within the macio device > 777c94a3ee macio: embed DBDMA device directly within macio > 2ea90e405c spapr: harden code that depends on VSMT > 00226ad7c9 spapr: register dummy ICPs later > 7ed96e066b ppc: Add aCube Sam460ex board > 9abb284ab2 pc-bios: Added u-boot-sam460 firmware binary > e4cb279fb1 roms: Added git submodule for u-boot-sam460 (firmware for sam460ex) > a2279cf053 ppc440: Add emulation of plb-pcix controller found in some 440 SoCs > 3e9afde83e ppc440_uc: Fix unintialized variable warning with older gcc > 8e4c18ae65 spapr: fix missing CPU core nodes in DT when running with TCG > > === OUTPUT BEGIN === > Checking PATCH 1/30: spapr: fix missing CPU core nodes in DT when running > with TCG... > Checking PATCH 2/30: ppc440_uc: Fix unintialized variable warning with older > gcc... > Checking PATCH 3/30: ppc440: Add emulation of plb-pcix controller found in > some 440 SoCs... > Checking PATCH 4/30: roms: Added git submodule for u-boot-sam460 (firmware > for sam460ex)... > Checking PATCH 5/30: pc-bios: Added u-boot-sam460 firmware binary... > Checking PATCH 6/30: ppc: Add aCube Sam460ex board... > Checking PATCH 7/30: spapr: register dummy ICPs later... > Checking PATCH 8/30: spapr: harden code that depends on VSMT... > Checking PATCH 9/30: macio: embed DBDMA device directly within macio... > Checking PATCH 10/30: macio: move ESCC device within the macio device... > Checking PATCH 11/30: heathrow: QOMify heathrow PIC... > Checking PATCH 12/30: heathrow: convert to trace-events... > Checking PATCH 13/30: heathrow: change heathrow_pic_init() to return the > heathrow device... > Checking PATCH 14/30: macio: move macio related structures and defines into > separate macio.h file... > Checking PATCH 15/30: mac_oldworld: use object link to pass heathrow PIC > object to macio... > Checking PATCH 16/30: openpic: move KVM-specific declarations into separate > openpic_kvm.h file... > Checking PATCH 17/30: openpic: move Op
[Qemu-devel] [PULL 00/30] ppc-for-2.12 queue 20180306
The following changes since commit f2bb2d14c2958f3f5aef456bd2cdb1ff99f4a562: Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging (2018-03-05 16:41:20 +) are available in the Git repository at: git://github.com/dgibson/qemu.git tags/ppc-for-2.12-20180306 for you to fetch changes up to 21b786f607b11d888f90bbb8c3414500515d11e7: PowerPC: Add TS bits into msr_mask (2018-03-06 13:16:29 +1100) ppc patch queue 2018-03-06 This pull request supersedes ppc-for-2.12-20180302 which had compile problems with some gcc versions. It also contains a few additional patches. Highlights are: * New Sam460ex machine type * Yet more fixes related to vcpu id allocation for spapr * Numerous macio cleanupsr * Some enhancements to the Spectre/Meltdown fixes for pseries, allowing use of a better mitigation for indirect branch based exploits * New pseries machine types with Spectre/Meltdown mitigations enabled (stop gap until libvirt and management understands the machine options) * A handful of other fixes BALATON Zoltan (5): ppc440_uc: Fix unintialized variable warning with older gcc ppc440: Add emulation of plb-pcix controller found in some 440 SoCs roms: Added git submodule for u-boot-sam460 (firmware for sam460ex) pc-bios: Added u-boot-sam460 firmware binary ppc: Add aCube Sam460ex board David Engraf (1): PPC: e500: Fix duplicate kernel load and device tree overlap Greg Kurz (3): spapr: fix missing CPU core nodes in DT when running with TCG spapr: register dummy ICPs later spapr: harden code that depends on VSMT Mark Cave-Ayland (13): macio: embed DBDMA device directly within macio macio: move ESCC device within the macio device heathrow: QOMify heathrow PIC heathrow: convert to trace-events heathrow: change heathrow_pic_init() to return the heathrow device macio: move macio related structures and defines into separate macio.h file mac_oldworld: use object link to pass heathrow PIC object to macio openpic: move KVM-specific declarations into separate openpic_kvm.h file openpic: move OpenPIC state and related definitions to openpic.h mac_newworld: use object link to pass OpenPIC object to macio macio: move setting of CUDA timebase frequency to macio_common_realize() macio: remove macio_init() function adb: add trace-events for monitoring keyboard/mouse during bus enumeration Nikunj A Dadhania (1): hw/ppc/spapr,e500: Use new property "stdout-path" for boot console Simon Guo (1): PowerPC: Add TS bits into msr_mask Suraj Jitindar Singh (6): target/ppc: Check mask when setting cap_ppc_safe_indirect_branch ppc/spapr-caps: Add support for custom spapr_capabilities ppc/spapr-caps: Convert cap-cfpc to custom spapr-cap ppc/spapr-caps: Convert cap-sbbc to custom spapr-cap ppc/spapr-caps: Convert cap-ibs to custom spapr-cap ppc/spapr-caps: Define the pseries-2.12-sxxm machine type .gitmodules| 3 + Makefile | 4 +- default-configs/ppc-softmmu.mak| 2 + default-configs/ppcemb-softmmu.mak | 1 + hw/input/adb-kbd.c | 4 + hw/input/adb-mouse.c | 5 + hw/input/trace-events | 5 + hw/intc/heathrow_pic.c | 166 +- hw/intc/openpic.c | 157 -- hw/intc/openpic_kvm.c | 1 + hw/intc/trace-events | 5 + hw/misc/macio/macio.c | 150 + hw/ppc/Makefile.objs | 3 +- hw/ppc/e500.c | 124 +--- hw/ppc/mac.h | 10 +- hw/ppc/mac_newworld.c | 56 ++-- hw/ppc/mac_oldworld.c | 50 ++- hw/ppc/ppc440_pcix.c | 528 hw/ppc/ppc440_uc.c | 3 + hw/ppc/sam460ex.c | 603 + hw/ppc/spapr.c | 176 ++- hw/ppc/spapr_caps.c| 153 +++--- hw/ppc/spapr_hcall.c | 5 +- hw/ppc/trace-events| 8 + include/hw/intc/heathrow_pic.h | 49 +++ include/hw/misc/macio/macio.h | 79 + include/hw/ppc/openpic.h | 160 +- include/hw/ppc/openpic_kvm.h | 7 + include/hw/ppc/spapr.h | 5 +- pc-bios/canyonlands.dtb| Bin 0 -> 9779 bytes pc-bios/canyonlands.dts| 566 ++ pc-bios/u-boot-sam460-20100605.bin | Bin 0 -> 524288 bytes roms/Makefile | 7 + roms/u-boot-sam460ex | 1 + target/ppc/kvm-stub.c | 2 +- target/ppc/kvm.c