[Intel-xe] [PATCH v2 0/2] Update Xe uAPI in a minimally invasive way
kode54 at gmail.com
kode54 at gmail.com
Thu May 25 15:48:37 UTC 2023
On Thu, May 25 2023 at 08:13:43 AM -07:00:00, Lucas De Marchi
<lucas.demarchi at intel.com> wrote:
> On Thu, May 25, 2023 at 01:24:55PM +0000, Jose Souza wrote:
>> Hi
>>
>> Planning to push this today,
>> Christopher already have sent the Mesa MR and IGT patch series.
>
> the whole point of this series is being able to fix it without having
> to
> synchronize with the mesa / media / igt / intel-compute updates. There
> are some reordering in the structs that would better be done before
> applying upstream and when that is done, then we need to sync all the
> UMDs. But not for this.
Unfortunately, all userspace software which is also built for multilib
must synchronize with this change, or else their 32-bit userspace will
simply fail. In my experience, apps consuming Mesa 32-bit without this
change will fail spectacularly, often crashing on startup.
I suppose only Mesa really matters, since most users won't be
installing proprietary software that consumes 32-bit OpenCL or VA-API,
but there may yet be cases for that. This is usually proprietary
software, often involving use of Wine, such as Steam's Proton
distribution.
>
> Lucas De Marchi
>
>> It should not break 64 bits ABI but would be good to update
>> intel-compute and media as well.
>>
>> On Wed, 2023-05-24 at 18:56 -0700, Christopher Snowhill wrote:
>>> This series takes off from mlankhorst's attempt to do the same,
>>> except
>>> instead, it tries to be as minimally invasive to the original uAPI
>>> as
>>> possible, by only inserting padding where appropriate to ensure all
>>> 32-bit members are 32-bit aligned, and all 64-bit members are 64-bit
>>> aligned. This should have zero effect on 64-bit hosts versus 64-bit
>>> userspace, so existing native software will operate the same with or
>>> without the update. The only real change is 32-bit compat support
>>> for
>>> multilib userspace, which was previously broken.
>>>
>>> Also introduces field validation against all of the padding and
>>> reserved fields, which must be zero, in a separate commit.
>>>
>>> v2:
>>> Removed extensions checks where there were none originally.
>>> (José)
>>> Moved extraneous parentheses to the correct places. (Lucas)
>>>
>>> Signed-off-by: Maarten Lankhorst <maarten.lankhorst at linux.intel.com
>>> <mailto:maarten.lankhorst at linux.intel.com>>
>>> Signed-off-by: Christopher Snowhill <kode54 at gmail.com
>>> <mailto:kode54 at gmail.com>>
>>>
>>> Christopher Snowhill (2):
>>> drm/xe: Add explicit padding to uAPI definition
>>> drm/xe: Validate uAPI padding and reserved fields
>>>
>>> drivers/gpu/drm/xe/xe_bo.c | 6 +++--
>>> drivers/gpu/drm/xe/xe_engine.c | 18 ++++++++++---
>>> drivers/gpu/drm/xe/xe_exec.c | 4 ++-
>>> drivers/gpu/drm/xe/xe_mmio.c | 3 ++-
>>> drivers/gpu/drm/xe/xe_query.c | 3 ++-
>>> drivers/gpu/drm/xe/xe_sync.c | 4 ++-
>>> drivers/gpu/drm/xe/xe_vm.c | 22 +++++++++++++---
>>> drivers/gpu/drm/xe/xe_vm_madvise.c | 4 ++-
>>> drivers/gpu/drm/xe/xe_wait_user_fence.c | 3 ++-
>>> include/uapi/drm/xe_drm.h | 34
>>> ++++++++++++++++++++++++-
>>> 10 files changed, 85 insertions(+), 16 deletions(-)
>>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/intel-xe/attachments/20230525/b32b26c1/attachment.htm>
More information about the Intel-xe
mailing list