Message ID | 20200617142305.1198672-1-stefanb@linux.vnet.ibm.com (mailing list archive) |
---|---|
Headers | show |
Series | tpm: Enable usage of TPM TIS with interrupts | expand |
Patchew URL: https://patchew.org/QEMU/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com/ Hi, This series seems to have some coding style problems. See output below for more information: Subject: [PATCH v4 0/8] tpm: Enable usage of TPM TIS with interrupts Type: series Message-id: 20200617142305.1198672-1-stefanb@linux.vnet.ibm.com === TEST SCRIPT BEGIN === #!/bin/bash git rev-parse base > /dev/null || exit 0 git config --local diff.renamelimit 0 git config --local diff.renames True git config --local diff.algorithm histogram ./scripts/checkpatch.pl --mailback base.. === TEST SCRIPT END === Updating 3c8cf5a9c21ff8782164d1def7f44bd888713384 From https://github.com/patchew-project/qemu * [new tag] patchew/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com -> patchew/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com Switched to a new branch 'test' 527f6a6 tpm: Disable interrupt support for TIS on sysbus 2409660 tpm: Guard irq related ops in case interrupts are disabled 727db5a tests: Add updated DSDT 9ae0b0d acpi: Enable TPM IRQ 62a659a tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ 4e3994a tests: Temporarily ignore DSDT table differences 651ddf0 tpm: Extend TPMIfClass with get_irqnum() function 9fe25b1 tpm_tis: Allow lowering of IRQ also when locality is not active === OUTPUT BEGIN === 1/8 Checking commit 9fe25b11a231 (tpm_tis: Allow lowering of IRQ also when locality is not active) 2/8 Checking commit 651ddf03a413 (tpm: Extend TPMIfClass with get_irqnum() function) ERROR: Macros with complex values should be enclosed in parenthesis #77: FILE: include/sysemu/tpm.h:28: +#define TPM_IRQ_DISABLED ~0 total: 1 errors, 0 warnings, 70 lines checked Patch 2/8 has style problems, please review. If any of these errors are false positives report them to the maintainer, see CHECKPATCH in MAINTAINERS. 3/8 Checking commit 4e3994ae9e45 (tests: Temporarily ignore DSDT table differences) 4/8 Checking commit 62a659ab5c12 (tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ) 5/8 Checking commit 9ae0b0d6f724 (acpi: Enable TPM IRQ) 6/8 Checking commit 727db5ac78ac (tests: Add updated DSDT) 7/8 Checking commit 240966001b86 (tpm: Guard irq related ops in case interrupts are disabled) 8/8 Checking commit 527f6a6fdb16 (tpm: Disable interrupt support for TIS on sysbus) === OUTPUT END === Test command exited with code: 1 The full log is available at http://patchew.org/logs/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com/testing.checkpatch/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
Patchew URL: https://patchew.org/QEMU/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com/ Hi, This series failed the asan build test. Please find the testing commands and their output below. If you have Docker installed, you can probably reproduce it locally. === TEST SCRIPT BEGIN === #!/bin/bash export ARCH=x86_64 make docker-image-fedora V=1 NETWORK=1 time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1 === TEST SCRIPT END === GEN docs/interop/qemu-qmp-ref.html GEN docs/interop/qemu-qmp-ref.txt GEN docs/interop/qemu-qmp-ref.7 /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) CC qga/commands.o CC qga/guest-agent-command-state.o CC qga/main.o --- AR libvhost-user.a GEN docs/interop/qemu-ga-ref.txt GEN docs/interop/qemu-ga-ref.7 /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK qemu-keymap /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK ivshmem-client LINK ivshmem-server AS pc-bios/optionrom/multiboot.o AS pc-bios/optionrom/linuxboot.o /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) CC pc-bios/optionrom/linuxboot_dma.o AS pc-bios/optionrom/pvh.o AS pc-bios/optionrom/kvmvapic.o --- BUILD pc-bios/optionrom/linuxboot_dma.raw BUILD pc-bios/optionrom/kvmvapic.raw SIGN pc-bios/optionrom/multiboot.bin /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) SIGN pc-bios/optionrom/linuxboot.bin SIGN pc-bios/optionrom/linuxboot_dma.bin LINK qemu-storage-daemon --- BUILD pc-bios/optionrom/pvh.img BUILD pc-bios/optionrom/pvh.raw LINK qemu-img /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) SIGN pc-bios/optionrom/pvh.bin /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK qemu-io LINK qemu-edid /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK fsdev/virtfs-proxy-helper LINK scsi/qemu-pr-helper /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK qemu-bridge-helper /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK virtiofsd /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK vhost-user-input /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK qemu-ga /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) GEN x86_64-softmmu/hmp-commands.h GEN x86_64-softmmu/hmp-commands-info.h GEN x86_64-softmmu/config-devices.h --- CC x86_64-softmmu/hw/scsi/vhost-scsi.o CC x86_64-softmmu/hw/scsi/vhost-user-scsi.o CC x86_64-softmmu/hw/tpm/tpm_ppi.o /tmp/qemu-test/src/fpu/softfloat.c:3365:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] absZ &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:3423:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] absZ0 &= ~ ( ( (uint64_t) ( absZ1<<1 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:3483:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] absZ0 &= ~(((uint64_t)(absZ1<<1) == 0) & roundNearestEven); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:3606:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] zSig &= ~ ( ( ( roundBits ^ 0x40 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:3760:13: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] zSig &= ~ ( ( ( roundBits ^ 0x200 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:3987:21: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:4003:22: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] zSig0 &= ~ ( ( (uint64_t) ( zSig1<<1 ) == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! /tmp/qemu-test/src/fpu/softfloat.c:4273:18: error: bitwise negation of a boolean expression; did you mean logical negation? [-Werror,-Wbool-operation] zSig1 &= ~ ( ( zSig2 + zSig2 == 0 ) & roundNearestEven ); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ! 8 errors generated. make[1]: *** [/tmp/qemu-test/src/rules.mak:69: fpu/softfloat.o] Error 1 make[1]: *** Waiting for unfinished jobs.... /tmp/qemu-test/src/migration/ram.c:919:45: error: implicit conversion from 'unsigned long' to 'double' changes value from 18446744073709551615 to 18446744073709551616 [-Werror,-Wimplicit-int-float-conversion] xbzrle_counters.encoding_rate = UINT64_MAX; ~ ^~~~~~~~~~ /usr/include/stdint.h:130:23: note: expanded from macro 'UINT64_MAX' --- 18446744073709551615UL ^~~~~~~~~~~~~~~~~~~~~~ 1 error generated. make[1]: *** [/tmp/qemu-test/src/rules.mak:69: migration/ram.o] Error 1 make: *** [Makefile:527: x86_64-softmmu/all] Error 2 Traceback (most recent call last): File "./tests/docker/docker.py", line 669, in <module> sys.exit(main()) --- raise CalledProcessError(retcode, cmd) subprocess.CalledProcessError: Command '['sudo', '-n', 'docker', 'run', '--label', 'com.qemu.instance.uuid=1eb82116e25740a68f0f82e83cce66ad', '-u', '1003', '--security-opt', 'seccomp=unconfined', '--rm', '-e', 'TARGET_LIST=x86_64-softmmu', '-e', 'EXTRA_CONFIGURE_OPTS=', '-e', 'V=', '-e', 'J=14', '-e', 'DEBUG=', '-e', 'SHOW_ENV=', '-e', 'CCACHE_DIR=/var/tmp/ccache', '-v', '/home/patchew2/.cache/qemu-docker-ccache:/var/tmp/ccache:z', '-v', '/var/tmp/patchew-tester-tmp-42oji2ml/src/docker-src.2020-06-17-10.46.07.12769:/var/tmp/qemu:z,ro', 'qemu:fedora', '/var/tmp/qemu/run', 'test-debug']' returned non-zero exit status 2. filter=--filter=label=com.qemu.instance.uuid=1eb82116e25740a68f0f82e83cce66ad make[1]: *** [docker-run] Error 1 make[1]: Leaving directory `/var/tmp/patchew-tester-tmp-42oji2ml/src' make: *** [docker-run-test-debug@fedora] Error 2 real 4m7.834s user 0m8.164s The full log is available at http://patchew.org/logs/20200617142305.1198672-1-stefanb@linux.vnet.ibm.com/testing.asan/?type=message. --- Email generated automatically by Patchew [https://patchew.org/]. Please send your feedback to patchew-devel@redhat.com
Hi Stefan, On 6/17/20 4:22 PM, Stefan Berger wrote: > This series of patches enables the usage of the TPM TIS with interrupts. > We use the unused IRQ 13, which is the only one accepted by Windows. > > Stefan > > v3->v4: > - Changed TPM_IRQ_DISABLED from -1 to ~0 > > v2->v3: > - Extended series to disable IRQ for TIS on sysbus > > v1->v2: > - Added updated DSDT > > Stefan Berger (8): > tpm_tis: Allow lowering of IRQ also when locality is not active > tpm: Extend TPMIfClass with get_irqnum() function > tests: Temporarily ignore DSDT table differences > tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ > acpi: Enable TPM IRQ > tests: Add updated DSDT > tpm: Guard irq related ops in case interrupts are disabled > tpm: Disable interrupt support for TIS on sysbus > > hw/i386/acpi-build.c | 11 +++++------ > hw/tpm/tpm_tis_common.c | 12 +++++++++--- > hw/tpm/tpm_tis_isa.c | 17 ++++++++++++++--- > hw/tpm/tpm_tis_sysbus.c | 12 +++++++++++- > include/hw/acpi/tpm.h | 3 ++- > include/sysemu/tpm.h | 12 ++++++++++++ > tests/data/acpi/q35/DSDT.tis | Bin 8357 -> 8360 bytes > 7 files changed, 53 insertions(+), 14 deletions(-) > I checked this series does not bring any regression on ARM TPM-TIS device. So if useful/relevant, feel free to add my T-b from the ARM pov. Tested-by: Eric Auger <eric.auger@redhat.com> Thanks Eric
On Wed, Jun 17, 2020 at 10:22:57AM -0400, Stefan Berger wrote: > This series of patches enables the usage of the TPM TIS with interrupts. > We use the unused IRQ 13, which is the only one accepted by Windows. > > Stefan ACPI parts: Reviewed-by: Michael S. Tsirkin <mst@redhat.com> How do we want this merged? TPM tree or mine? > v3->v4: > - Changed TPM_IRQ_DISABLED from -1 to ~0 > > v2->v3: > - Extended series to disable IRQ for TIS on sysbus > > v1->v2: > - Added updated DSDT > > Stefan Berger (8): > tpm_tis: Allow lowering of IRQ also when locality is not active > tpm: Extend TPMIfClass with get_irqnum() function > tests: Temporarily ignore DSDT table differences > tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ > acpi: Enable TPM IRQ > tests: Add updated DSDT > tpm: Guard irq related ops in case interrupts are disabled > tpm: Disable interrupt support for TIS on sysbus > > hw/i386/acpi-build.c | 11 +++++------ > hw/tpm/tpm_tis_common.c | 12 +++++++++--- > hw/tpm/tpm_tis_isa.c | 17 ++++++++++++++--- > hw/tpm/tpm_tis_sysbus.c | 12 +++++++++++- > include/hw/acpi/tpm.h | 3 ++- > include/sysemu/tpm.h | 12 ++++++++++++ > tests/data/acpi/q35/DSDT.tis | Bin 8357 -> 8360 bytes > 7 files changed, 53 insertions(+), 14 deletions(-) > > -- > 2.24.1 > >
On 6/23/20 9:09 AM, Michael S. Tsirkin wrote: > On Wed, Jun 17, 2020 at 10:22:57AM -0400, Stefan Berger wrote: >> This series of patches enables the usage of the TPM TIS with interrupts. >> We use the unused IRQ 13, which is the only one accepted by Windows. >> >> Stefan > > ACPI parts: > > Reviewed-by: Michael S. Tsirkin <mst@redhat.com> > > How do we want this merged? TPM tree or mine? Queued it here: https://github.com/stefanberger/qemu-tpm/commits/tpm-next Was going to send a PR later this week with this part. Will add your Rb-s. Stefan > >> v3->v4: >> - Changed TPM_IRQ_DISABLED from -1 to ~0 >> >> v2->v3: >> - Extended series to disable IRQ for TIS on sysbus >> >> v1->v2: >> - Added updated DSDT >> >> Stefan Berger (8): >> tpm_tis: Allow lowering of IRQ also when locality is not active >> tpm: Extend TPMIfClass with get_irqnum() function >> tests: Temporarily ignore DSDT table differences >> tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ >> acpi: Enable TPM IRQ >> tests: Add updated DSDT >> tpm: Guard irq related ops in case interrupts are disabled >> tpm: Disable interrupt support for TIS on sysbus >> >> hw/i386/acpi-build.c | 11 +++++------ >> hw/tpm/tpm_tis_common.c | 12 +++++++++--- >> hw/tpm/tpm_tis_isa.c | 17 ++++++++++++++--- >> hw/tpm/tpm_tis_sysbus.c | 12 +++++++++++- >> include/hw/acpi/tpm.h | 3 ++- >> include/sysemu/tpm.h | 12 ++++++++++++ >> tests/data/acpi/q35/DSDT.tis | Bin 8357 -> 8360 bytes >> 7 files changed, 53 insertions(+), 14 deletions(-) >> >> -- >> 2.24.1 >> >>
On 6/18/20 3:27 AM, Auger Eric wrote: I have to defer this series since there are some things that don't work on the Linux level with IRQ 13 (edge) while they do work fine on the old IRQ 5 (festeoi). I know which changes to make to Linux so that it works on IRQ 13 as well, but I am not sure whether those changes are acceptable. So now we could upstream this one here: [PATCH v4 4/8] tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ Stefan > Hi Stefan, > > On 6/17/20 4:22 PM, Stefan Berger wrote: >> This series of patches enables the usage of the TPM TIS with interrupts. >> We use the unused IRQ 13, which is the only one accepted by Windows. >> >> Stefan >> >> v3->v4: >> - Changed TPM_IRQ_DISABLED from -1 to ~0 >> >> v2->v3: >> - Extended series to disable IRQ for TIS on sysbus >> >> v1->v2: >> - Added updated DSDT >> >> Stefan Berger (8): >> tpm_tis: Allow lowering of IRQ also when locality is not active >> tpm: Extend TPMIfClass with get_irqnum() function >> tests: Temporarily ignore DSDT table differences >> tpm: Split TPM_TIS_IRQ into TPM_TIS_ISA_IRQ and TPM_TIS_SYSBUS_IRQ >> acpi: Enable TPM IRQ >> tests: Add updated DSDT >> tpm: Guard irq related ops in case interrupts are disabled >> tpm: Disable interrupt support for TIS on sysbus >> >> hw/i386/acpi-build.c | 11 +++++------ >> hw/tpm/tpm_tis_common.c | 12 +++++++++--- >> hw/tpm/tpm_tis_isa.c | 17 ++++++++++++++--- >> hw/tpm/tpm_tis_sysbus.c | 12 +++++++++++- >> include/hw/acpi/tpm.h | 3 ++- >> include/sysemu/tpm.h | 12 ++++++++++++ >> tests/data/acpi/q35/DSDT.tis | Bin 8357 -> 8360 bytes >> 7 files changed, 53 insertions(+), 14 deletions(-) >> > I checked this series does not bring any regression on ARM TPM-TIS > device. So if useful/relevant, feel free to add my T-b from the ARM pov. > > Tested-by: Eric Auger <eric.auger@redhat.com> > > Thanks > > Eric >