Skip to content

[Mos] Fix Xe media engine reset on 32-bit media-driver#2005

Open
matte-schwartz wants to merge 1 commit into
intel:masterfrom
matte-schwartz:matts/fix-32bit-reset
Open

[Mos] Fix Xe media engine reset on 32-bit media-driver#2005
matte-schwartz wants to merge 1 commit into
intel:masterfrom
matte-schwartz:matts/fix-32bit-reset

Conversation

@matte-schwartz
Copy link
Copy Markdown

batch_addrs[0] (uint64_t) was cast through uintptr_t before assignment to exec.address (__u64). On 32-bit builds this truncates GPU VAs above 4GB, causing the kernel to reject or fault the dispatch and reset the media engine.

Pass batch_addrs[0] directly. For the array pointer branch, use the standard (uint64_t)(uintptr_t) idiom.

batch_addrs[0] (uint64_t) was cast through uintptr_t before assignment
to exec.address (__u64). On 32-bit builds this truncates GPU VAs above
4GB, causing the kernel to reject or fault the dispatch and reset the
media engine.

Pass batch_addrs[0] directly. For the array pointer branch, use the
standard (uint64_t)(uintptr_t) idiom.

Signed-off-by: Matthew Schwartz <matthew.schwartz@linux.dev>
@matte-schwartz
Copy link
Copy Markdown
Author

Sorry, I was under the impression given some older merged PRs in this repo (#1493) that 32-bit was somewhat supported, but I see now I was mistaken and that you've stated 32-bit builds are not supported: #1989 (comment).

This was actually for a media engine reset I ran into while looking into the feature requested in that issue, so it probably makes more sense to continue discussions there.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant