Message ID | 20240522193016.136866-1-artyomkunakovsky@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | meson.build: add -mcx16 flag | expand |
On Wed, May 22, 2024 at 10:30:16PM +0300, Artyom Kunakovsky wrote: > fix linker error if the project was configured by the './configure --cpu=unknown --target-list=riscv64-softmmu' command Isn't this simply user error, with the right answer being to pass a valid CPU target to --cpu, rather than "unknown" > > Signed-off-by: Artyom Kunakovsky <artyomkunakovsky@gmail.com> > --- > meson.build | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) With regards, Daniel
The compilation error caused by attempting of use 128 bit '__sync_val_compare_and_swap_16', which is supported on the host but not enabled, I don't think this is expected behavior. Also the patch is little incomplete, I already sent v2 patch, that applying the flag only for x86_64 host. With regards, Artyom K.
On Thu, 23 May 2024 at 09:04, Daniel P. Berrangé <berrange@redhat.com> wrote: > > On Wed, May 22, 2024 at 10:30:16PM +0300, Artyom Kunakovsky wrote: > > fix linker error if the project was configured by the './configure --cpu=unknown --target-list=riscv64-softmmu' command > > Isn't this simply user error, with the right answer being > to pass a valid CPU target to --cpu, rather than "unknown" I've felt for ages that we should probably drop the "unrecognized host CPU, fall back to TCI" path and insist that we only run on recognized CPU types. Then we could also sanity check that the user passed a valid --cpu option. thanks -- PMM
On Thu, May 23, 2024 at 09:52:35AM +0100, Peter Maydell wrote: > On Thu, 23 May 2024 at 09:04, Daniel P. Berrangé <berrange@redhat.com> wrote: > > > > On Wed, May 22, 2024 at 10:30:16PM +0300, Artyom Kunakovsky wrote: > > > fix linker error if the project was configured by the './configure --cpu=unknown --target-list=riscv64-softmmu' command > > > > Isn't this simply user error, with the right answer being > > to pass a valid CPU target to --cpu, rather than "unknown" > > I've felt for ages that we should probably drop the "unrecognized > host CPU, fall back to TCI" path and insist that we only run > on recognized CPU types. Then we could also sanity check that > the user passed a valid --cpu option. Yeah, I think that's reasonable. Worst case, a user will have to send us a patch to recognise a new CPU target, at which point at least we know that it exists as a possible target. With regards, Daniel
On 5/22/24 21:30, Artyom Kunakovsky wrote: > fix linker error if the project was configured by the './configure --cpu=unknown --target-list=riscv64-softmmu' command > > Signed-off-by: Artyom Kunakovsky <artyomkunakovsky@gmail.com> > --- > meson.build | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/meson.build b/meson.build > index a9de71d450..0c24878c86 100644 > --- a/meson.build > +++ b/meson.build > @@ -298,7 +298,7 @@ endforeach > > qemu_common_flags = [ > '-D_GNU_SOURCE', '-D_FILE_OFFSET_BITS=64', '-D_LARGEFILE_SOURCE', > - '-fno-strict-aliasing', '-fno-common', '-fwrapv' ] > + '-fno-strict-aliasing', '-fno-common', '-fwrapv', '-mcx16' ] -mcx16 does not exist on non-x86 hosts so this change breaks them. QEMU's configure script knows to add -mcx16 on x86 hosts; you've added --cpu=unknown yourself, you have to add --extra-cflags=-mcx16 as well. Paolo > qemu_cflags = [] > qemu_ldflags = [] >
diff --git a/meson.build b/meson.build index a9de71d450..0c24878c86 100644 --- a/meson.build +++ b/meson.build @@ -298,7 +298,7 @@ endforeach qemu_common_flags = [ '-D_GNU_SOURCE', '-D_FILE_OFFSET_BITS=64', '-D_LARGEFILE_SOURCE', - '-fno-strict-aliasing', '-fno-common', '-fwrapv' ] + '-fno-strict-aliasing', '-fno-common', '-fwrapv', '-mcx16' ] qemu_cflags = [] qemu_ldflags = []
fix linker error if the project was configured by the './configure --cpu=unknown --target-list=riscv64-softmmu' command Signed-off-by: Artyom Kunakovsky <artyomkunakovsky@gmail.com> --- meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)