[openstack-dev] [nova] pci pass through turing complete config options?
Daniel P. Berrange
berrange at redhat.com
Tue Oct 28 11:44:15 UTC 2014
On Tue, Oct 28, 2014 at 07:34:11AM -0400, Sean Dague wrote:
> We're dealing with some issues on devstack pass through with really
> complicated config option types, the fixes are breaking other things.
>
> The issue at hand is the fact that the pci pass through device listing
> is an olso MultiStrOpt in which each option value is fully valid json
> document, which must parse as such. That leads to things like:
>
> pci_passthrough_whitelist = {"address":"*:0a:00.*",
> "physical_network":"physnet1"}
> pci_passthrough_whitelist = {"vendor_id":"1137","product_id":"0071"}
>
> Which, honestly, seems a little weird for configs.
>
> We're talking about a small number of fixed fields here, so the use of a
> full json doc seems weird. I'd like to reopen why this was the value
> format, and if we could have a more simple one.
Do you have ant suggestion for an alternative config syntax for specifying
a list of dicts which would be suitable ?
One option would be a more CSV like syntax eg
pci_passthrough_whitelist = address=*0a:00.*,physical_network=physnet1
pci_passthrough_whitelist = vendor_id=1137,product_id=0071
But this gets confusing if we want to specifying multiple sets of data
so might need to use semi-colons as first separator, and comma for list
element separators
pci_passthrough_whitelist = vendor_id=8085;product_id=4fc2, vendor_id=1137;product_id=0071
Overall it isn't clear that inventing a special case language for this PCI
config value is a good idea.
I think it illustrates a gap in oslo.config, which ought to be able to
support a config option type which was a "list of dicts of strings"
so anywhere which needs such a beast will use the same syntax.
Regards,
Daniel
--
|: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org -o- http://virt-manager.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :|
More information about the OpenStack-dev
mailing list