diff mbox series

[2/2] hw/i386: Rename default_bus_bypass_iommu

Message ID 20210811085842.2511545-2-jean-philippe@linaro.org
State Superseded
Headers show
Series [1/2] hw/arm/virt: Rename default_bus_bypass_iommu | expand

Commit Message

Jean-Philippe Brucker Aug. 11, 2021, 8:58 a.m. UTC
Since commit d8fb7d0969d5 ("vl: switch -M parsing to keyval"), machine
parameter definitions cannot use underscores, because keyval_dashify()
transforms them to dashes and the parser doesn't find the parameter.

This affects option default_bus_bypass_iommu which was introduced in the
same release:

$ qemu-system-x86_64 -M q35,default_bus_bypass_iommu=on
qemu-system-x86_64: Property 'pc-q35-6.1-machine.default-bus-bypass-iommu' not found

Rename the parameter to "default-bus-bypass-iommu". Passing
"default_bus_bypass_iommu" is still valid since the underscore are
transformed automatically.

Fixes: c9e96b04fc19 ("hw/i386: Add a default_bus_bypass_iommu pc machine option")
Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

---
 hw/i386/pc.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

-- 
2.32.0

Comments

Eric Auger Oct. 5, 2021, 5:08 p.m. UTC | #1
On 8/11/21 10:58 AM, Jean-Philippe Brucker wrote:
> Since commit d8fb7d0969d5 ("vl: switch -M parsing to keyval"), machine

> parameter definitions cannot use underscores, because keyval_dashify()

> transforms them to dashes and the parser doesn't find the parameter.

> 

> This affects option default_bus_bypass_iommu which was introduced in the

> same release:

> 

> $ qemu-system-x86_64 -M q35,default_bus_bypass_iommu=on

> qemu-system-x86_64: Property 'pc-q35-6.1-machine.default-bus-bypass-iommu' not found

> 

> Rename the parameter to "default-bus-bypass-iommu". Passing

> "default_bus_bypass_iommu" is still valid since the underscore are

> transformed automatically.

> 

> Fixes: c9e96b04fc19 ("hw/i386: Add a default_bus_bypass_iommu pc machine option")

> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>

Reviewed-by: Eric Auger <eric.auger@redhat.com>

Tested-by: Eric Auger <eric.auger@redhat.com>



Eric

> ---

>  hw/i386/pc.c | 2 +-

>  1 file changed, 1 insertion(+), 1 deletion(-)

> 

> diff --git a/hw/i386/pc.c b/hw/i386/pc.c

> index fb24f000e7..ce4756ad59 100644

> --- a/hw/i386/pc.c

> +++ b/hw/i386/pc.c

> @@ -1779,7 +1779,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)

>      object_class_property_add_bool(oc, "hpet",

>          pc_machine_get_hpet, pc_machine_set_hpet);

>  

> -    object_class_property_add_bool(oc, "default_bus_bypass_iommu",

> +    object_class_property_add_bool(oc, "default-bus-bypass-iommu",

>          pc_machine_get_default_bus_bypass_iommu,

>          pc_machine_set_default_bus_bypass_iommu);

>  

>
Markus Armbruster Nov. 25, 2021, 7:12 a.m. UTC | #2
Michael & Marcel, this patch fixes a bug that became a regression when
the fix missed 6.1.  It's been stuck on the list since August.  Please
have a look, and if it's good, get it merged.  I just asked the arm/virt
maintainer to do the same for PATCH 1.

Jean-Philippe Brucker <jean-philippe@linaro.org> writes:

> Since commit d8fb7d0969d5 ("vl: switch -M parsing to keyval"), machine
> parameter definitions cannot use underscores, because keyval_dashify()
> transforms them to dashes and the parser doesn't find the parameter.
>
> This affects option default_bus_bypass_iommu which was introduced in the
> same release:
>
> $ qemu-system-x86_64 -M q35,default_bus_bypass_iommu=on
> qemu-system-x86_64: Property 'pc-q35-6.1-machine.default-bus-bypass-iommu' not found
>
> Rename the parameter to "default-bus-bypass-iommu". Passing
> "default_bus_bypass_iommu" is still valid since the underscore are
> transformed automatically.
>
> Fixes: c9e96b04fc19 ("hw/i386: Add a default_bus_bypass_iommu pc machine option")
> Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
> ---
>  hw/i386/pc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> index fb24f000e7..ce4756ad59 100644
> --- a/hw/i386/pc.c
> +++ b/hw/i386/pc.c
> @@ -1779,7 +1779,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
>      object_class_property_add_bool(oc, "hpet",
>          pc_machine_get_hpet, pc_machine_set_hpet);
>  
> -    object_class_property_add_bool(oc, "default_bus_bypass_iommu",
> +    object_class_property_add_bool(oc, "default-bus-bypass-iommu",
>          pc_machine_get_default_bus_bypass_iommu,
>          pc_machine_set_default_bus_bypass_iommu);
Michael S. Tsirkin Nov. 25, 2021, 7:19 a.m. UTC | #3
On Thu, Nov 25, 2021 at 08:12:25AM +0100, Markus Armbruster wrote:
> Michael & Marcel, this patch fixes a bug that became a regression when
> the fix missed 6.1.  It's been stuck on the list since August.  Please
> have a look, and if it's good, get it merged.


Thanks for the reminder. Jean-Philippe, Cc maintainers
will help patches get merged in a timely manner in the future.

>  I just asked the arm/virt
> maintainer to do the same for PATCH 1.

Some questions below.

> Jean-Philippe Brucker <jean-philippe@linaro.org> writes:
> 
> > Since commit d8fb7d0969d5 ("vl: switch -M parsing to keyval"), machine
> > parameter definitions cannot use underscores, because keyval_dashify()
> > transforms them to dashes and the parser doesn't find the parameter.
> >
> > This affects option default_bus_bypass_iommu which was introduced in the
> > same release:
> >
> > $ qemu-system-x86_64 -M q35,default_bus_bypass_iommu=on
> > qemu-system-x86_64: Property 'pc-q35-6.1-machine.default-bus-bypass-iommu' not found

I don't see this behaviour. What did I miss?


> > Rename the parameter to "default-bus-bypass-iommu". Passing
> > "default_bus_bypass_iommu" is still valid since the underscore are
> > transformed automatically.
> >
> > Fixes: c9e96b04fc19 ("hw/i386: Add a default_bus_bypass_iommu pc machine option")
> > Signed-off-by: Jean-Philippe Brucker <jean-philippe@linaro.org>
> > ---
> >  hw/i386/pc.c | 2 +-
> >  1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/hw/i386/pc.c b/hw/i386/pc.c
> > index fb24f000e7..ce4756ad59 100644
> > --- a/hw/i386/pc.c
> > +++ b/hw/i386/pc.c
> > @@ -1779,7 +1779,7 @@ static void pc_machine_class_init(ObjectClass *oc, void *data)
> >      object_class_property_add_bool(oc, "hpet",
> >          pc_machine_get_hpet, pc_machine_set_hpet);
> >  
> > -    object_class_property_add_bool(oc, "default_bus_bypass_iommu",
> > +    object_class_property_add_bool(oc, "default-bus-bypass-iommu",
> >          pc_machine_get_default_bus_bypass_iommu,
> >          pc_machine_set_default_bus_bypass_iommu);
> 
> 
>
Markus Armbruster Nov. 25, 2021, 8:56 a.m. UTC | #4
"Michael S. Tsirkin" <mst@redhat.com> writes:

> On Thu, Nov 25, 2021 at 08:12:25AM +0100, Markus Armbruster wrote:
>> Michael & Marcel, this patch fixes a bug that became a regression when
>> the fix missed 6.1.  It's been stuck on the list since August.  Please
>> have a look, and if it's good, get it merged.
>
>
> Thanks for the reminder. Jean-Philippe, Cc maintainers
> will help patches get merged in a timely manner in the future.
>
>>  I just asked the arm/virt
>> maintainer to do the same for PATCH 1.
>
> Some questions below.
>
>> Jean-Philippe Brucker <jean-philippe@linaro.org> writes:
>> 
>> > Since commit d8fb7d0969d5 ("vl: switch -M parsing to keyval"), machine
>> > parameter definitions cannot use underscores, because keyval_dashify()
>> > transforms them to dashes and the parser doesn't find the parameter.
>> >
>> > This affects option default_bus_bypass_iommu which was introduced in the
>> > same release:
>> >
>> > $ qemu-system-x86_64 -M q35,default_bus_bypass_iommu=on
>> > qemu-system-x86_64: Property 'pc-q35-6.1-machine.default-bus-bypass-iommu' not found
>
> I don't see this behaviour. What did I miss?

I looked at the source and somehow missed that the fix is already there
(commit 739b38630c45).  Sorry for the noise!

[...]
diff mbox series

Patch

diff --git a/hw/i386/pc.c b/hw/i386/pc.c
index fb24f000e7..ce4756ad59 100644
--- a/hw/i386/pc.c
+++ b/hw/i386/pc.c
@@ -1779,7 +1779,7 @@  static void pc_machine_class_init(ObjectClass *oc, void *data)
     object_class_property_add_bool(oc, "hpet",
         pc_machine_get_hpet, pc_machine_set_hpet);
 
-    object_class_property_add_bool(oc, "default_bus_bypass_iommu",
+    object_class_property_add_bool(oc, "default-bus-bypass-iommu",
         pc_machine_get_default_bus_bypass_iommu,
         pc_machine_set_default_bus_bypass_iommu);