[libvirt] [PATCH 04/15] schema: allow pci address attributes to be in decimal
Michal Privoznik
mprivozn at redhat.com
Wed Mar 30 09:05:37 UTC 2016
On 24.03.2016 20:25, Laine Stump wrote:
> This is especially useful for "bus", since the bus of a device's pci
> address is matched to the "index" of a controller to determine which
> bus it will be connected to, and "index" is always specified in
> decimal - being able to specify both in decimal at least makes it
> easier to assure a device is being assigned to the correct bus when it
> is added. For the other attributes, it is just a convenience.
>
> (MB: the parser already allows for any of these attributes to be given
> in decimal, and there are even examples floating around on the
> internet that give them in decimal rather than hex (written in the
> days before virsh did schema validation on all XML). This only updates
> the schema to match the parser.)
> ---
> docs/schemas/basictypes.rng | 32 ++++++++++++++++++++------------
> 1 file changed, 20 insertions(+), 12 deletions(-)
>
> diff --git a/docs/schemas/basictypes.rng b/docs/schemas/basictypes.rng
> index 64babaf..e2936d8 100644
> --- a/docs/schemas/basictypes.rng
> +++ b/docs/schemas/basictypes.rng
> @@ -282,24 +282,32 @@
> </define>
>
> <define name="pciDomain">
> - <data type="string">
> - <param name="pattern">(0x)?[0-9a-fA-F]{1,4}</param>
> - </data>
> + <ref name="uint16"/>
> </define>
> <define name="pciBus">
> - <data type="string">
> - <param name="pattern">(0x)?[0-9a-fA-F]{1,2}</param>
> - </data>
> + <ref name="uint8"/>
> </define>
> <define name="pciSlot">
> - <data type="string">
> - <param name="pattern">(0x)?[0-1]?[0-9a-fA-F]</param>
> - </data>
> + <choice>
> + <data type="string">
> + <param name="pattern">(0x)?[0-1]?[0-9a-fA-F]</param>
> + </data>
> + <data type="int">
> + <param name="minInclusive">0</param>
> + <param name="maxInclusive">31</param>
> + </data>
> + </choice>
> </define>
> <define name="pciFunc">
> - <data type="string">
> - <param name="pattern">(0x)?[0-7]</param>
> - </data>
> + <choice>
> + <data type="string">
> + <param name="pattern">(0x)?[0-7]</param>
> + </data>
> + <data type="int">
> + <param name="minInclusive">0</param>
> + <param name="maxInclusive">7</param>
> + </data>
> + </choice>
> </define>
>
> <define name='wwn'>
>
Okay, but we can never format them in decimal as '12' in decimal is
something different than in hexadecimal.
Michal
More information about the libvir-list
mailing list