PCI-Passthrough : TypeError: pop() takes at most 1 argument (2 given
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Medium
|
Baodong (Robert) Li | ||
Juno |
Fix Released
|
Undecided
|
Unassigned |
Bug Description
Setting the below causes nova to fail.
# White list of PCI devices available to VMs. For example:
# pci_passthrough
# "product_id": "0443"}] (multi valued)
#pci_passthroug
pci_passthrough
Fails with :
CRITICAL nova [-] TypeError: pop() takes at most 1 argument (2 given)
2014-10-17 15:28:59.968 7153 CRITICAL nova [-] TypeError: pop() takes at most 1 argument (2 given)
2014-10-17 15:28:59.968 7153 TRACE nova Traceback (most recent call last):
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/bin/
2014-10-17 15:28:59.968 7153 TRACE nova sys.exit(main())
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova db_allowed=
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova db_allowed=
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self.manager = manager_
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self.driver = driver.
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova virtapi)
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova return import_
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self.dev_filter = pci_whitelist.
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova return PciHostDevicesW
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self.specs = self._parse_
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova spec = pci_devspec.
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self._init_
2014-10-17 15:28:59.968 7153 TRACE nova File "/usr/lib/
2014-10-17 15:28:59.968 7153 TRACE nova self.vendor_id = details.
Changing the config to:
pci_passthrough
Fixes the above.
In Icehouse, PCI Passthrough worked with passing a list, in Juno it is broken.
Changed in nova: | |
assignee: | nobody → Baodong (Robert) Li (baoli) |
Changed in nova: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
tags: | added: pci-passthrough |
Changed in nova: | |
assignee: | Baodong (Robert) Li (baoli) → Ian Wienand (iwienand) |
Changed in nova: | |
assignee: | Ian Wienand (iwienand) → Baodong (Robert) Li (baoli) |
Changed in nova: | |
milestone: | none → kilo-2 |
status: | Fix Committed → Fix Released |
tags: | added: juno-backport-potential |
Changed in nova: | |
milestone: | kilo-2 → 2015.1.0 |
as you have indicated that setting it as
will succeed, this is done in Juno to simplify it by not requiring the [ ] any more. The reason for that is pci whitelist is a multiline option, and each line specifies a single whitelist entry.