qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7
@ 2025-05-08 14:41 Thomas Huth
  2025-05-08 14:41 ` [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h Thomas Huth
                   ` (4 more replies)
  0 siblings, 5 replies; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

I accidentally only sent this to qemu-arm, not to the qemu-devel mailing
list, so this is a resend, sorry if you've got it twice.
Note that there was already some discussion on the qemu-arm mailing list,
see the archive here (i.e. I'll try to rework the third patch and
postpone the last one):

 https://lists.libreplanet.org/archive/html/qemu-arm/2025-05/msg00549.html

Original cover letter message follows:

At the end of April, OpenBSD 7.7 has been released, so we could update
our test VM to that version now. However, I noticed that some arm machines
now fail to compile since they fail to include the <epoxy/gl.h> header.
This header resides in /usr/X11R6/include instead of /usr/include in
OpenBSD, so we have to make sure that the machines are compiled with the
right CFLAGS (or don't include the header at all if it is not really
necessary). Thus the first patches of this series clean up this first
before we can finally switch to OpenBSD 7.7. The last patch then
also reverts a hack for OpenBSD in the main meson.build file since the
related problem has finally been fixed there.

Thomas Huth (5):
  include/hw/dma/xlnx_dpdma: Remove dependency on console.h
  hw/display/bcm2835_fb: Move inclusion of console.h to the .c file
  hw/arm: Compile musicpal and the xlnx machines with the right CFLAGS
  tests/vm: Update OpenBSD to 7.7
  Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD"

 meson.build                     | 6 +-----
 include/hw/display/bcm2835_fb.h | 1 -
 include/hw/dma/xlnx_dpdma.h     | 1 -
 hw/display/bcm2835_fb.c         | 1 +
 hw/arm/meson.build              | 4 ++--
 tests/vm/openbsd                | 4 ++--
 6 files changed, 6 insertions(+), 11 deletions(-)

-- 
2.49.0



^ permalink raw reply	[flat|nested] 11+ messages in thread

* [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h
  2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
@ 2025-05-08 14:41 ` Thomas Huth
  2025-05-08 15:39   ` Philippe Mathieu-Daudé
  2025-05-08 14:41 ` [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file Thomas Huth
                   ` (3 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

From: Thomas Huth <thuth@redhat.com>

console.h brings a dependency on the <epoxy/opengl.h> and the pixman
header file (if available), so we should avoid to include this file
if it is not really necessary (otherwise we have to specify the
dependency in the meson.build file, too, to get the right include
paths everywhere). console.h does not seem to be necessary for the
xlnx_dpdma code, so drop the include here.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 include/hw/dma/xlnx_dpdma.h | 1 -
 1 file changed, 1 deletion(-)

diff --git a/include/hw/dma/xlnx_dpdma.h b/include/hw/dma/xlnx_dpdma.h
index 1ec0d265be2..484b2e377f0 100644
--- a/include/hw/dma/xlnx_dpdma.h
+++ b/include/hw/dma/xlnx_dpdma.h
@@ -26,7 +26,6 @@
 #define XLNX_DPDMA_H
 
 #include "hw/sysbus.h"
-#include "ui/console.h"
 #include "system/dma.h"
 #include "qom/object.h"
 
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file
  2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
  2025-05-08 14:41 ` [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h Thomas Huth
@ 2025-05-08 14:41 ` Thomas Huth
  2025-05-08 18:24   ` Daniel P. Berrangé
  2025-05-08 14:41 ` [RFC PATCH 3/5] hw/arm: Compile musicpal and the xlnx machines with the right CFLAGS Thomas Huth
                   ` (2 subsequent siblings)
  4 siblings, 1 reply; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

From: Thomas Huth <thuth@redhat.com>

The definitions from console.h are not needed in the bcm2835_fb.h
header file yet, so let's move it to the place that really needs
its definitions, i.e. into the bcm2835_fb.c file.
This way the header can also be used by code that is not compiled
with the CFLAGS that are required for pixman or OpenGL (in case
their headers do not reside under /usr/include).

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 include/hw/display/bcm2835_fb.h | 1 -
 hw/display/bcm2835_fb.c         | 1 +
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/include/hw/display/bcm2835_fb.h b/include/hw/display/bcm2835_fb.h
index 49541bf08f4..acc9230b6a8 100644
--- a/include/hw/display/bcm2835_fb.h
+++ b/include/hw/display/bcm2835_fb.h
@@ -13,7 +13,6 @@
 #define BCM2835_FB_H
 
 #include "hw/sysbus.h"
-#include "ui/console.h"
 #include "qom/object.h"
 
 #define UPPER_RAM_BASE 0x40000000
diff --git a/hw/display/bcm2835_fb.c b/hw/display/bcm2835_fb.c
index 820e67ac8bb..1bb2ee45a01 100644
--- a/hw/display/bcm2835_fb.c
+++ b/hw/display/bcm2835_fb.c
@@ -27,6 +27,7 @@
 #include "hw/display/bcm2835_fb.h"
 #include "hw/hw.h"
 #include "hw/irq.h"
+#include "ui/console.h"
 #include "framebuffer.h"
 #include "ui/pixel_ops.h"
 #include "hw/misc/bcm2835_mbox_defs.h"
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [RFC PATCH 3/5] hw/arm: Compile musicpal and the xlnx machines with the right CFLAGS
  2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
  2025-05-08 14:41 ` [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h Thomas Huth
  2025-05-08 14:41 ` [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file Thomas Huth
@ 2025-05-08 14:41 ` Thomas Huth
  2025-05-08 14:41 ` [PATCH 4/5] tests/vm: Update OpenBSD to 7.7 Thomas Huth
  2025-05-08 14:41 ` [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD" Thomas Huth
  4 siblings, 0 replies; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

From: Thomas Huth <thuth@redhat.com>

These machines include ui/console.h, which in turn includes the
pixman headers and <epoxy/gl.h> via ui/surface.h. If these library
headers are located outside of /usr/include (like gl.h on OpenBSD 7.7),
we must make sure to compile this code with the right CFLAGS so that
the headers can be found.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 Note: Paolo had a better suggestion here:
 https://lists.libreplanet.org/archive/html/qemu-arm/2025-05/msg00571.html

 hw/arm/meson.build | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/hw/arm/meson.build b/hw/arm/meson.build
index 5098795f61d..51d0c055abf 100644
--- a/hw/arm/meson.build
+++ b/hw/arm/meson.build
@@ -8,7 +8,7 @@ arm_common_ss.add(when: 'CONFIG_HIGHBANK', if_true: files('highbank.c'))
 arm_common_ss.add(when: 'CONFIG_INTEGRATOR', if_true: files('integratorcp.c'))
 arm_common_ss.add(when: 'CONFIG_MICROBIT', if_true: files('microbit.c'))
 arm_common_ss.add(when: 'CONFIG_MPS3R', if_true: files('mps3r.c'))
-arm_common_ss.add(when: 'CONFIG_MUSICPAL', if_true: [pixman, files('musicpal.c')])
+arm_common_ss.add(when: 'CONFIG_MUSICPAL', if_true: [files('musicpal.c'), pixman, opengl])
 arm_common_ss.add(when: 'CONFIG_NETDUINOPLUS2', if_true: files('netduinoplus2.c'))
 arm_common_ss.add(when: 'CONFIG_OLIMEX_STM32_H405', if_true: files('olimex-stm32-h405.c'))
 arm_common_ss.add(when: 'CONFIG_NPCM7XX', if_true: files('npcm7xx.c', 'npcm7xx_boards.c'))
@@ -34,7 +34,7 @@ arm_common_ss.add(when: 'CONFIG_STM32F205_SOC', if_true: files('stm32f205_soc.c'
 arm_common_ss.add(when: 'CONFIG_STM32F405_SOC', if_true: files('stm32f405_soc.c'))
 arm_common_ss.add(when: 'CONFIG_B_L475E_IOT01A', if_true: files('b-l475e-iot01a.c'))
 arm_common_ss.add(when: 'CONFIG_STM32L4X5_SOC', if_true: files('stm32l4x5_soc.c'))
-arm_common_ss.add(when: 'CONFIG_XLNX_ZYNQMP_ARM', if_true: files('xlnx-zynqmp.c', 'xlnx-zcu102.c'))
+arm_common_ss.add(when: 'CONFIG_XLNX_ZYNQMP_ARM', if_true: [files('xlnx-zynqmp.c', 'xlnx-zcu102.c'), pixman, opengl])
 arm_common_ss.add(when: 'CONFIG_XLNX_VERSAL', if_true: files('xlnx-versal.c', 'xlnx-versal-virt.c'))
 arm_common_ss.add(when: 'CONFIG_FSL_IMX25', if_true: files('fsl-imx25.c', 'imx25_pdk.c'))
 arm_common_ss.add(when: 'CONFIG_FSL_IMX31', if_true: files('fsl-imx31.c', 'kzm.c'))
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [PATCH 4/5] tests/vm: Update OpenBSD to 7.7
  2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
                   ` (2 preceding siblings ...)
  2025-05-08 14:41 ` [RFC PATCH 3/5] hw/arm: Compile musicpal and the xlnx machines with the right CFLAGS Thomas Huth
@ 2025-05-08 14:41 ` Thomas Huth
  2025-05-08 18:25   ` Daniel P. Berrangé
  2025-05-08 14:41 ` [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD" Thomas Huth
  4 siblings, 1 reply; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

From: Thomas Huth <thuth@redhat.com>

OpenBSD 7.7 has been released at the end of April 2025, so let's
update to that version.

Reported-by: Brad Smith <brad@comstyle.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 tests/vm/openbsd | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/vm/openbsd b/tests/vm/openbsd
index 5e4f76f3988..2ea86a01bad 100755
--- a/tests/vm/openbsd
+++ b/tests/vm/openbsd
@@ -22,8 +22,8 @@ class OpenBSDVM(basevm.BaseVM):
     name = "openbsd"
     arch = "x86_64"
 
-    link = "https://cdn.openbsd.org/pub/OpenBSD/7.6/amd64/install76.iso"
-    csum = "60cba8cb391b50bba8fa10fc768bd0529636f5345d82133c93e22c798d8e5269"
+    link = "https://cdn.openbsd.org/pub/OpenBSD/7.7/amd64/install77.iso"
+    csum = "da0106e39463f015524dca806f407c37a9bdd17e6dfffe533b06a2dd2edd8a27"
     size = "20G"
     pkgs = [
         # tools
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD"
  2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
                   ` (3 preceding siblings ...)
  2025-05-08 14:41 ` [PATCH 4/5] tests/vm: Update OpenBSD to 7.7 Thomas Huth
@ 2025-05-08 14:41 ` Thomas Huth
  2025-05-08 18:26   ` Daniel P. Berrangé
  4 siblings, 1 reply; 11+ messages in thread
From: Thomas Huth @ 2025-05-08 14:41 UTC (permalink / raw)
  To: Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

From: Thomas Huth <thuth@redhat.com>

This reverts commit 2d6d995709482cc8b6a76dbb5334a28001a14a9a.

OpenBSD 7.7 fixed the problem with the -fzero-call-used-regs on OpenBSD,
see https://github.com/openbsd/src/commit/03eca72d1e030b7a542cd6aec1 for
the fix there.

Suggested-by: Brad Smith <brad@comstyle.com>
Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 Note: Marked as RFC since we likely can include this only once OpenBSD
 7.6 goes out of service, see:
 https://lists.libreplanet.org/archive/html/qemu-arm/2025-05/msg00559.html

 meson.build | 6 +-----
 1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/meson.build b/meson.build
index 6c61e1dcaec..5f0e6a65cb0 100644
--- a/meson.build
+++ b/meson.build
@@ -699,11 +699,7 @@ hardening_flags = [
 #
 # NB: Clang 17 is broken and SEGVs
 # https://github.com/llvm/llvm-project/issues/75168
-#
-# NB2: This clashes with the "retguard" extension of OpenBSD's Clang
-# https://gitlab.com/qemu-project/qemu/-/issues/2278
-if host_os != 'openbsd' and \
-   cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
+if cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
                name: '-fzero-call-used-regs=used-gpr',
                args: ['-O2', '-fzero-call-used-regs=used-gpr'])
     hardening_flags += '-fzero-call-used-regs=used-gpr'
-- 
2.49.0



^ permalink raw reply related	[flat|nested] 11+ messages in thread

* Re: [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h
  2025-05-08 14:41 ` [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h Thomas Huth
@ 2025-05-08 15:39   ` Philippe Mathieu-Daudé
  0 siblings, 0 replies; 11+ messages in thread
From: Philippe Mathieu-Daudé @ 2025-05-08 15:39 UTC (permalink / raw)
  To: Thomas Huth, Peter Maydell, qemu-arm, Brad Smith, qemu-devel
  Cc: Warner Losh, Paolo Bonzini, Marc-André Lureau,
	Daniel P. Berrangé

On 8/5/25 16:41, Thomas Huth wrote:
> From: Thomas Huth <thuth@redhat.com>
> 
> console.h brings a dependency on the <epoxy/opengl.h> and the pixman
> header file (if available), so we should avoid to include this file
> if it is not really necessary (otherwise we have to specify the
> dependency in the meson.build file, too, to get the right include
> paths everywhere). console.h does not seem to be necessary for the
> xlnx_dpdma code, so drop the include here.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>   include/hw/dma/xlnx_dpdma.h | 1 -
>   1 file changed, 1 deletion(-)

Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file
  2025-05-08 14:41 ` [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file Thomas Huth
@ 2025-05-08 18:24   ` Daniel P. Berrangé
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-05-08 18:24 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Peter Maydell, qemu-arm, Brad Smith, qemu-devel, Warner Losh,
	Paolo Bonzini, Marc-André Lureau

On Thu, May 08, 2025 at 04:41:17PM +0200, Thomas Huth wrote:
> From: Thomas Huth <thuth@redhat.com>
> 
> The definitions from console.h are not needed in the bcm2835_fb.h
> header file yet, so let's move it to the place that really needs
> its definitions, i.e. into the bcm2835_fb.c file.
> This way the header can also be used by code that is not compiled
> with the CFLAGS that are required for pixman or OpenGL (in case
> their headers do not reside under /usr/include).
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  include/hw/display/bcm2835_fb.h | 1 -
>  hw/display/bcm2835_fb.c         | 1 +
>  2 files changed, 1 insertion(+), 1 deletion(-)

It references the QemuConsole type, but we get that from typedefs.h
not console.h so

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>

With 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 :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [PATCH 4/5] tests/vm: Update OpenBSD to 7.7
  2025-05-08 14:41 ` [PATCH 4/5] tests/vm: Update OpenBSD to 7.7 Thomas Huth
@ 2025-05-08 18:25   ` Daniel P. Berrangé
  0 siblings, 0 replies; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-05-08 18:25 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Peter Maydell, qemu-arm, Brad Smith, qemu-devel, Warner Losh,
	Paolo Bonzini, Marc-André Lureau

On Thu, May 08, 2025 at 04:41:19PM +0200, Thomas Huth wrote:
> From: Thomas Huth <thuth@redhat.com>
> 
> OpenBSD 7.7 has been released at the end of April 2025, so let's
> update to that version.
> 
> Reported-by: Brad Smith <brad@comstyle.com>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  tests/vm/openbsd | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Reviewed-by: Daniel P. Berrangé <berrange@redhat.com>


With 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 :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD"
  2025-05-08 14:41 ` [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD" Thomas Huth
@ 2025-05-08 18:26   ` Daniel P. Berrangé
  2025-09-09  7:30     ` Thomas Huth
  0 siblings, 1 reply; 11+ messages in thread
From: Daniel P. Berrangé @ 2025-05-08 18:26 UTC (permalink / raw)
  To: Thomas Huth
  Cc: Peter Maydell, qemu-arm, Brad Smith, qemu-devel, Warner Losh,
	Paolo Bonzini, Marc-André Lureau

On Thu, May 08, 2025 at 04:41:20PM +0200, Thomas Huth wrote:
> From: Thomas Huth <thuth@redhat.com>
> 
> This reverts commit 2d6d995709482cc8b6a76dbb5334a28001a14a9a.
> 
> OpenBSD 7.7 fixed the problem with the -fzero-call-used-regs on OpenBSD,
> see https://github.com/openbsd/src/commit/03eca72d1e030b7a542cd6aec1 for
> the fix there.
> 
> Suggested-by: Brad Smith <brad@comstyle.com>
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  Note: Marked as RFC since we likely can include this only once OpenBSD
>  7.6 goes out of service, see:
>  https://lists.libreplanet.org/archive/html/qemu-arm/2025-05/msg00559.html

Yep, we have to wait a bit longer, unless someone can confirm the
fix was backported to 7.6

> 
>  meson.build | 6 +-----
>  1 file changed, 1 insertion(+), 5 deletions(-)
> 
> diff --git a/meson.build b/meson.build
> index 6c61e1dcaec..5f0e6a65cb0 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -699,11 +699,7 @@ hardening_flags = [
>  #
>  # NB: Clang 17 is broken and SEGVs
>  # https://github.com/llvm/llvm-project/issues/75168
> -#
> -# NB2: This clashes with the "retguard" extension of OpenBSD's Clang
> -# https://gitlab.com/qemu-project/qemu/-/issues/2278
> -if host_os != 'openbsd' and \
> -   cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
> +if cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
>                 name: '-fzero-call-used-regs=used-gpr',
>                 args: ['-O2', '-fzero-call-used-regs=used-gpr'])
>      hardening_flags += '-fzero-call-used-regs=used-gpr'
> -- 
> 2.49.0
> 

With 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 :|



^ permalink raw reply	[flat|nested] 11+ messages in thread

* Re: [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD"
  2025-05-08 18:26   ` Daniel P. Berrangé
@ 2025-09-09  7:30     ` Thomas Huth
  0 siblings, 0 replies; 11+ messages in thread
From: Thomas Huth @ 2025-09-09  7:30 UTC (permalink / raw)
  To: Daniel P. Berrangé
  Cc: Peter Maydell, qemu-arm, Brad Smith, qemu-devel, Warner Losh,
	Paolo Bonzini, Marc-André Lureau

On 08/05/2025 20.26, Daniel P. Berrangé wrote:
> On Thu, May 08, 2025 at 04:41:20PM +0200, Thomas Huth wrote:
>> From: Thomas Huth <thuth@redhat.com>
>>
>> This reverts commit 2d6d995709482cc8b6a76dbb5334a28001a14a9a.
>>
>> OpenBSD 7.7 fixed the problem with the -fzero-call-used-regs on OpenBSD,
>> see https://github.com/openbsd/src/commit/03eca72d1e030b7a542cd6aec1 for
>> the fix there.
>>
>> Suggested-by: Brad Smith <brad@comstyle.com>
>> Signed-off-by: Thomas Huth <thuth@redhat.com>
>> ---
>>   Note: Marked as RFC since we likely can include this only once OpenBSD
>>   7.6 goes out of service, see:
>>   https://lists.libreplanet.org/archive/html/qemu-arm/2025-05/msg00559.html
> 
> Yep, we have to wait a bit longer, unless someone can confirm the
> fix was backported to 7.6

Now that QEMU 10.1 has been released, I'm going to include this patch in my 
next pull request. OpenBSD 7.8 should get released in October, so 7.6 will 
go out of service at that point in time, and our next QEMU release is likely 
in December, so we should be fine. Or has anybody still concerns about 
including this now?

  Thomas


>>
>>   meson.build | 6 +-----
>>   1 file changed, 1 insertion(+), 5 deletions(-)
>>
>> diff --git a/meson.build b/meson.build
>> index 6c61e1dcaec..5f0e6a65cb0 100644
>> --- a/meson.build
>> +++ b/meson.build
>> @@ -699,11 +699,7 @@ hardening_flags = [
>>   #
>>   # NB: Clang 17 is broken and SEGVs
>>   # https://github.com/llvm/llvm-project/issues/75168
>> -#
>> -# NB2: This clashes with the "retguard" extension of OpenBSD's Clang
>> -# https://gitlab.com/qemu-project/qemu/-/issues/2278
>> -if host_os != 'openbsd' and \
>> -   cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
>> +if cc.compiles('extern struct { void (*cb)(void); } s; void f(void) { s.cb(); }',
>>                  name: '-fzero-call-used-regs=used-gpr',
>>                  args: ['-O2', '-fzero-call-used-regs=used-gpr'])
>>       hardening_flags += '-fzero-call-used-regs=used-gpr'
>> -- 
>> 2.49.0
>>
> 
> With regards,
> Daniel



^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2025-09-09  7:32 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-05-08 14:41 [PATCH RESEND 0/5] Fix dependencies in arm machines and update OpenBSD to 7.7 Thomas Huth
2025-05-08 14:41 ` [PATCH 1/5] include/hw/dma/xlnx_dpdma: Remove dependency on console.h Thomas Huth
2025-05-08 15:39   ` Philippe Mathieu-Daudé
2025-05-08 14:41 ` [PATCH 2/5] hw/display/bcm2835_fb: Move inclusion of console.h to the .c file Thomas Huth
2025-05-08 18:24   ` Daniel P. Berrangé
2025-05-08 14:41 ` [RFC PATCH 3/5] hw/arm: Compile musicpal and the xlnx machines with the right CFLAGS Thomas Huth
2025-05-08 14:41 ` [PATCH 4/5] tests/vm: Update OpenBSD to 7.7 Thomas Huth
2025-05-08 18:25   ` Daniel P. Berrangé
2025-05-08 14:41 ` [RFC PATCH 5/5] Revert "meson.build: Disable -fzero-call-used-regs on OpenBSD" Thomas Huth
2025-05-08 18:26   ` Daniel P. Berrangé
2025-09-09  7:30     ` Thomas Huth

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).