-
Notifications
You must be signed in to change notification settings - Fork 78
fix(data): profiles: clean up after multiple inheritance #1230
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Za64rs ("Reservation sets are a maximum of 64 bytes.") conflicts with
Za128rs ("Reservation sets must be at most 128 bytes in size.").
Most profiles don't automatically incorporate optional extensions from
"ancestors", so more extensions need to be removed after profile inheritance.
For example, in UDB, profile RVA23S64 inherits from both RVB23S64 and RVA23U64.
However, in the profiles documentation it (roughly) inherits from only RVA23U64,
and then only "all the mandatory unprivileged extensions". So, the optional
extensions need to be handled more explicitly, and many need to be removed.
Signed-off-by: Paul A. Clarke <pclarke@ventanamicro.com>
I'd argue Za64rs implies Za128rs instead of conflicting with it. A max reservation set size of 64 bytes inherently means it meets a max size of 128 bytes. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #1230 +/- ##
=======================================
Coverage 46.05% 46.05%
=======================================
Files 11 11
Lines 4942 4942
Branches 1345 1345
=======================================
Hits 2276 2276
Misses 2666 2666
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
Technically, yes, I suppose. It kinda depends on how you look at it. It's misleading to claim support for reservations sets up to 128 bytes when you really only support up to 64 bytes. I'm not sure how claiming support for Za128rs is helpful when the actual maximum is 64 bytes? What could you do with that extra information? |
|
edited the PR message, removing the following text:
This was clarified to me on tech-privileged mailing list to agree with @jordancarlin's interpretation that Za64rs implies Za128rs (and doesn't conflict with it). |
Most profiles don't automatically incorporate optional extensions from "ancestors", so more extensions need to be removed after profile inheritance.
For example, in UDB, profile RVA23S64 inherits from both RVB23S64 and RVA23U64. However, in the profiles documentation it (roughly) inherits from only RVA23U64, and then only "all the mandatory unprivileged extensions". So, the optional extensions need to be handled more explicitly, and many need to be removed.
Fixes #1195