diff options
| author | Thomas Huth <thuth@redhat.com> | 2024-03-04 11:44:05 +0100 |
|---|---|---|
| committer | Michael Tokarev <mjt@tls.msk.ru> | 2024-03-09 18:56:37 +0300 |
| commit | c68f81fec8cb15a5c88c3e0ae152c719e633318c (patch) | |
| tree | ff2e24fa09b94c9ddd609c025dd0b0fc58ba0109 /hw/core/machine-smp.c | |
| parent | c4e898d502549025e087aa799211a5c6bd3984ff (diff) | |
| download | focaccia-qemu-c68f81fec8cb15a5c88c3e0ae152c719e633318c.tar.gz focaccia-qemu-c68f81fec8cb15a5c88c3e0ae152c719e633318c.zip | |
hw/pci-bridge/cxl_upstream: Fix problem with g_steal_pointer()
When setting GLIB_VERSION_MAX_ALLOWED to GLIB_VERSION_2_58 or higher, glib adds type safety checks to the g_steal_pointer() macro. This triggers errors in the build_cdat_table() function which uses the g_steal_pointer() for type-casting from one pointer type to the other (which also looks quite weird since the local pointers have all been declared with g_autofree though they are never freed here). Let's fix it by using a proper typecast instead. For making this possible, we have to remove the QEMU_PACKED attribute from some structs since GCC otherwise complains that the source and destination pointer might have different alignment restrictions. Removing the QEMU_PACKED should be fine here since the structs are already naturally aligned. Anyway, add some QEMU_BUILD_BUG_ON() statements to make sure that we've got the right sizes (without padding in the structs). Signed-off-by: Thomas Huth <thuth@redhat.com> Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> Reviewed-by: Michael Tokarev <mjt@tls.msk.ru> Signed-off-by: Michael Tokarev <mjt@tls.msk.ru>
Diffstat (limited to 'hw/core/machine-smp.c')
0 files changed, 0 insertions, 0 deletions