[DG2] context isolation uapi fixes
I915_PARAM_HAS_CONTEXT_ISOLATION is only used by iris to signify that context state does not leak to other processes. This gates some code in iris which would others lead to crashes in at least the media driver (if I remember the story correctly in all details).
Everything else is uapi just for igt and needs to be fixed. Unfortunately igt validating for these additional requirements means on any hw with RCS+CCS engines those tests fail, which has resulted in plenty of pointless thrashing around already. Specifically the cross-engine reset isolation that the igt assumes does not hold.
What needs to be done:
- uapi simplified to only the boolean iris requires, the engine mask needs to go
- uapi documented (in kerneldoc) to only what iris requires, and not anything else
- igt testcase fixed up to hardcode additional assumptions about each platform. This should only impact gem_ctx_isolation testcase.
- fix the igt to skip the cross-engine tests for RCS/CCS pairs (in any combination) since architecturally we just don't make cross engine isolation guarantees ont those. Note that there's multiple igt that encode invalid assumptions about context isolation, we probably need to review all the gem_ctx_* tests here. We probably want a helper in lib/ to encode whether 2 engines are isolated or not.
- revert and DII patches that have been pushed to "fix" these testcase failures, and any infrastructure to support this in the KMD both in DII and upstream.
This has already been discussed at length in the context of GuC enabling in VLK-18755 a lot.