9fc63c7644
If the end-user specifies a cpu_realtime_mask that does not begin with a carat (i.e. it is not a purely-exclusion mask) it's likely that they're expecting us to use the exact mask that they have specified, not realizing that we default to all-vCPUs-are-RT. Let's make nova's behaviour a bit more friendly by correctly handling this scenario. Note that the end-user impact of this is minimal/non-existent. As discussed in bug #1884231, the only way a user could have used this before would be if they'd configured an emulator thread and purposefully set an invalid 'hw:cpu_realtime_mask' set. In fact, they wouldn't have been able to use this value at all if they used API microversion 2.86 (extra spec validation). Part of blueprint use-pcpu-and-vcpu-in-one-instance Change-Id: Id81859186de6fb6b728ad566a532244008fe77d0 Closes-Bug: #1688673
17 lines
700 B
YAML
17 lines
700 B
YAML
---
|
|
fixes:
|
|
- |
|
|
Previously, it was possible to specify values for the
|
|
``hw:cpu_realtime_mask`` extra spec that were not within the range of valid
|
|
instances cores. This value is now correctly validated.
|
|
features:
|
|
- |
|
|
It is now possible to allocate all cores in an instance to realtime and
|
|
omit the ``hw:cpu_realtime_mask`` extra spec. This requires specifying the
|
|
``hw:emulator_threads_policy`` extra spec.
|
|
- |
|
|
It is now possible to specify a mask in ``hw:cpu_realtime_mask`` without a
|
|
leading ``^``. When this is ommitted, the value will specify the cores that
|
|
should be included in the set of realtime cores, as opposed to those that
|
|
should be excluded.
|