|
From: | Thomas Huth |
Subject: | Re: [PATCH v5 8/8] hw/mem/cxl_type3: Add CXL RAS Error Injection Support. |
Date: | Thu, 23 Feb 2023 07:58:18 +0100 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.13.0 |
On 22/02/2023 19.16, Philippe Mathieu-Daudé wrote:
+Thomas (meson) & Marc-André (conditional QAPI)
+ Markus
On 22/2/23 17:49, Jonathan Cameron wrote:+# Type of uncorrectable CXL error to inject. These errors are reported via +# an AER uncorrectable internal error with additional information logged at+# the CXL device. +#+# @cache-data-parity: Data error such as data parity or data ECC error CXL.cache +# @cache-address-parity: Address parity or other errors associated with the+# address field on CXL.cache+# @cache-be-parity: Byte enable parity or other byte enable errors on CXL.cache+# @cache-data-ecc: ECC error on CXL.cache+# @mem-data-parity: Data error such as data parity or data ECC error on CXL.mem +# @mem-address-parity: Address parity or other errors associated with the+# address field on CXL.mem+# @mem-be-parity: Byte enable parity or other byte enable errors on CXL.mem.+# @mem-data-ecc: Data ECC error on CXL.mem. +# @reinit-threshold: REINIT threshold hit. +# @rsvd-encoding: Received unrecognized encoding. +# @poison-received: Received poison from the peer.+# @receiver-overflow: Buffer overflows (first 3 bits of header log indicate which)+# @internal: Component specific error +# @cxl-ide-tx: Integrity and data encryption tx error. +# @cxl-ide-rx: Integrity and data encryption rx error. +## + +{ 'enum': 'CxlUncorErrorType',Doesn't these need 'if': 'CONFIG_CXL_MEM_DEVICE', ?If I make this change I get a bunch of./qapi/qapi-types-cxl.h:18:13: error: attempt to use poisoned "CONFIG_CXL_MEM_DEVICE"18 | #if defined(CONFIG_CXL_MEM_DEVICE)Err, I meant the generic CONFIG_CXL, not CONFIG_CXL_MEM_DEVICE.It's a target specific define (I think) as built alongside PCI_EXPRESS Only CXL_ACPI is specifically included by x86 and arm64 (out of tree)To be honest though I don't fully understand the QEMU build system so the reasonfor the error might be wrong.You need to restrict to system emulation (the 'have_system' check):This doesn't help - still have attempt to used poisoned "CONFIG_CXL"
Not sure how the QAPI generator works, but target specific config switches can only be used in target specific json files there, so that's machine-target.json and misc-target.json currently, as far as I know. Not sure how the QAPI generator distinguishes between common and target specific code, though ... just by the "-target" suffix? Maybe Markus or Marc-André can comment on that.
See also: https://lists.gnu.org/archive/html/qemu-devel/2023-02/msg01885.html https://lists.gnu.org/archive/html/qemu-devel/2023-02/msg02001.html Thomas
[Prev in Thread] | Current Thread | [Next in Thread] |