<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/next/linux-next.git/drivers/gpu/drm/xe, branch master</title>
<subtitle>The linux-next integration testing tree</subtitle>
<id>https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master</id>
<link rel='self' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/'/>
<updated>2026-09-10T15:06:32+00:00</updated>
<entry>
<title>Merge branch 'drm-xe-next' of https://gitlab.freedesktop.org/drm/xe/kernel.git</title>
<updated>2026-09-10T15:06:32+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-09-10T15:06:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=2f03a3fe84216541ed29f9b7bc014acb5f1b676b'/>
<id>urn:sha1:2f03a3fe84216541ed29f9b7bc014acb5f1b676b</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Merge branch 'for-linux-next' of https://gitlab.freedesktop.org/drm/i915/kernel.git</title>
<updated>2026-09-10T15:06:29+00:00</updated>
<author>
<name>Mark Brown</name>
<email>broonie@kernel.org</email>
</author>
<published>2026-09-10T15:06:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6bf87f0794e33d9edd9cb60e8b90c7e4cb9ffc04'/>
<id>urn:sha1:6bf87f0794e33d9edd9cb60e8b90c7e4cb9ffc04</id>
<content type='text'>
# Conflicts:
#	drivers/gpu/drm/i915/display/intel_cdclk.c
</content>
</entry>
<entry>
<title>drm/xe/sysctrl: Add helper to check oCode firmware readiness</title>
<updated>2026-09-09T19:44:22+00:00</updated>
<author>
<name>Anoop Vijay</name>
<email>anoop.c.vijay@intel.com</email>
</author>
<published>2026-09-04T13:49:37+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=c81d8cdf29b6f13a3c50f961d997995b985f66c6'/>
<id>urn:sha1:c81d8cdf29b6f13a3c50f961d997995b985f66c6</id>
<content type='text'>
Add xe_sysctrl_is_oobmsm_fw_ready(), a convenience wrapper around
xe_sysctrl_check_app_status() to check oCode application readiness.

Signed-off-by: Anoop Vijay &lt;anoop.c.vijay@intel.com&gt;
Reviewed-by: Michael J. Ruhl &lt;michael.j.ruhl@intel.com&gt;
Reviewed-by: Umesh Nerlige Ramappa &lt;umesh.nerlige.ramappa@intel.com&gt;
Signed-off-by: Umesh Nerlige Ramappa &lt;umesh.nerlige.ramappa@intel.com&gt;
Link: https://patch.msgid.link/20260904134935.674507-6-anoop.c.vijay@intel.com
</content>
</entry>
<entry>
<title>drm/xe/sysctrl: Add helper to query application status</title>
<updated>2026-09-09T19:44:20+00:00</updated>
<author>
<name>Anoop Vijay</name>
<email>anoop.c.vijay@intel.com</email>
</author>
<published>2026-09-04T13:49:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=0bae1d5438abecaf688b2df7ac30edf0482b8d90'/>
<id>urn:sha1:0bae1d5438abecaf688b2df7ac30edf0482b8d90</id>
<content type='text'>
Add xe_sysctrl_check_app_status() to query the state of a System
Controller application using get_app_status_by_id mailbox command.

The helper maps xe_sysctrl_app_id values to firmware application
IDs and returns the reported application state. Add a convenience
wrapper to check diag firmware application readiness.

Signed-off-by: Anoop Vijay &lt;anoop.c.vijay@intel.com&gt;
Reviewed-by: Michael J. Ruhl &lt;michael.j.ruhl@intel.com&gt;
Reviewed-by: Umesh Nerlige Ramappa &lt;umesh.nerlige.ramappa@intel.com&gt;
Signed-off-by: Umesh Nerlige Ramappa &lt;umesh.nerlige.ramappa@intel.com&gt;
Link: https://patch.msgid.link/20260904134935.674507-5-anoop.c.vijay@intel.com
</content>
</entry>
<entry>
<title>drm/xe: convert PCI barrier mmap to use xe_mmio_gem</title>
<updated>2026-09-09T09:57:11+00:00</updated>
<author>
<name>Matthew Auld</name>
<email>matthew.auld@intel.com</email>
</author>
<published>2026-09-08T16:50:55+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=73ae70cf843f93904bb02f8f213b50acfbb84ce7'/>
<id>urn:sha1:73ae70cf843f93904bb02f8f213b50acfbb84ce7</id>
<content type='text'>
Convert the PCI barrier mmap over to use xe_mmio_gem, which is a good
match for this functionality. This has the following advantages:

 1. Removes a bunch of code.
 2. Replaces the fragile hard coded fake offset design.
 3. Adds the first user for xe_mmio_gem, which is preferred over nuking
    it. There are also potentially other upcoming usecases wanting this
    type of functionality, so having standard component to do this would
    be good.

There shouldn't be any big functional change here. From userspace pov,
they still query the fake offset like before, just that now it is no
longer hard coded in the KMD.

v2 (Thomas):
  - Prefer scoped_guard(). Also, just annotate ALL locations, even if
    not strictly needed. Reflect that in the kernel-doc. This will also
    shut up static analysis tools.

Assisted-by: LLM
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Cc: Thomas Hellström &lt;thomas.hellstrom@linux.intel.com&gt;
Cc: Tejas Upadhyay &lt;tejas.upadhyay@intel.com&gt;
Cc: Matthew Brost &lt;matthew.brost@intel.com&gt;
Cc: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Thomas Hellström &lt;thomas.hellstrom@linux.intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-18-matthew.auld@intel.com
</content>
</entry>
<entry>
<title>drm/xe/mmio_gem: reject VM_EXEC and drop VM_DONTCOPY</title>
<updated>2026-09-09T09:57:10+00:00</updated>
<author>
<name>Matthew Auld</name>
<email>matthew.auld@intel.com</email>
</author>
<published>2026-09-08T16:50:54+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=7cf85c190814c209cb182eaba39e184c1655faa9'/>
<id>urn:sha1:7cf85c190814c209cb182eaba39e184c1655faa9</id>
<content type='text'>
Hardware MMIO registers should never be executable; reject VM_EXEC
at mmap time and clear VM_MAYEXEC to prevent later mprotect attempts.

Also drop VM_DONTCOPY so that child processes across fork() can
inherit the mapping and lazily fault in the PFNs, matching standard
DRM GEM semantics and making the existing drm_gem_vm_open() callback
functional.

This aligns with existing PCI_BARRIER, which will use this in the next
patch. We don't want any noticeable behaviour change there, since this
will be user visible. This will also be the first user.

Assisted-by: LLM
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Cc: Thomas Hellström &lt;thomas.hellstrom@linux.intel.com&gt;
Cc: Tejas Upadhyay &lt;tejas.upadhyay@intel.com&gt;
Cc: Matthew Brost &lt;matthew.brost@intel.com&gt;
Cc: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Thomas Hellström &lt;thomas.hellstrom@linux.intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-17-matthew.auld@intel.com
</content>
</entry>
<entry>
<title>drm/xe/mmio_gem: fix destroy flow</title>
<updated>2026-09-09T09:57:10+00:00</updated>
<author>
<name>Ilia Levi</name>
<email>ilia.levi@intel.com</email>
</author>
<published>2026-09-08T16:50:53+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=fb2ee38bab8025ad6a7a9cbb4635c5a178e4a7bc'/>
<id>urn:sha1:fb2ee38bab8025ad6a7a9cbb4635c5a178e4a7bc</id>
<content type='text'>
xe_mmio_gem_destroy() currently frees the GEM object directly, bypassing
reference counting.  Since existing VMAs hold a reference and the fault
handler accesses the object through vma-&gt;vm_private_data, this is
use-after-free.  Additionally, nothing prevents the fault handler from
installing PTEs to the real MMIO after destroy.

Fix this with proper synchronization and refcounting. Also, do not set
vm_pgoff to zero. Many DRM drivers do this because helpers like
dma_mmap_pages() interpret vm_pgoff as an intra-buffer page offset;
leaving the DRM fake offset there would break these helpers.
Those drivers can get away with zeroing it because they map eagerly -
all PTEs are established before mmap returns, so vm_pgoff is never
consulted again. Our driver does not use such helpers and the newly
introduced call to drm_vma_node_unmap() relies on vm_pgoff being untouched.

v2: (Matt Auld)
- use dma_resv lock to serialize fault handler with destroy
- SIGBUS on access after destroy

Fixes: 1ffcf8b8ae8a ("drm/xe: Support for mmap-ing mmio regions")
Assisted-by: GitHub-Copilot:claude-opus-4.6
Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-16-matthew.auld@intel.com
</content>
</entry>
<entry>
<title>drm/xe/mmio_gem: cache the dummy page per object</title>
<updated>2026-09-09T09:57:10+00:00</updated>
<author>
<name>Ilia Levi</name>
<email>ilia.levi@intel.com</email>
</author>
<published>2026-09-08T16:50:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=8bf6213f9831e46313af4722a1ee6db1b7596378'/>
<id>urn:sha1:8bf6213f9831e46313af4722a1ee6db1b7596378</id>
<content type='text'>
Currently, when the fault handler provides a dummy page, it
allocates a new one on every invocation and ties its lifetime to
the drm_device via drmm_add_action_or_reset(). Concurrent faults
after hot-unplug therefore accumulate pages that persist until
device teardown.

Cache a single dummy page in the xe_mmio_gem object and use dma_resv
lock to protect its allocation. Free it with the object.

v2: use dma_resv lock to protect the allocation (Matt Auld)

Assisted-by: GitHub-Copilot:claude-opus-4.6
Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-15-matthew.auld@intel.com
</content>
</entry>
<entry>
<title>drm/xe/mmio_gem: Revoke drm_vma_node on xe_mmio_gem destroy</title>
<updated>2026-09-09T09:57:10+00:00</updated>
<author>
<name>Shuicheng Lin</name>
<email>shuicheng.lin@intel.com</email>
</author>
<published>2026-09-08T16:50:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=32f0cb250598456d812fb7ca57a040282858323d'/>
<id>urn:sha1:32f0cb250598456d812fb7ca57a040282858323d</id>
<content type='text'>
xe_mmio_gem_create() calls drm_vma_node_allow() but nothing ever calls
drm_vma_node_revoke(). The drm_vma_offset_file rb-tree entry allocated
by drm_vma_node_allow() is not freed by drm_gem_object_release(), so
it is leaked on every create/destroy cycle.

Add a struct drm_file * parameter to xe_mmio_gem_destroy() and call
drm_vma_node_revoke() from there, mirroring the drm_vma_node_allow()
call in xe_mmio_gem_create().

Fixes: 1ffcf8b8ae8a ("drm/xe: Support for mmap-ing mmio regions")
Suggested-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Assisted-by: Claude:claude-opus-4.6
Signed-off-by: Shuicheng Lin &lt;shuicheng.lin@intel.com&gt;
Reviewed-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-14-matthew.auld@intel.com
</content>
</entry>
<entry>
<title>drm/xe/mmio_gem: simplify fault handler loop</title>
<updated>2026-09-09T09:57:10+00:00</updated>
<author>
<name>Ilia Levi</name>
<email>ilia.levi@intel.com</email>
</author>
<published>2026-09-08T16:50:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.landau.one/pub/scm/linux/kernel/git/next/linux-next.git/commit/?id=6666ca9192f3bdf839aad33b9e1c9ebb7a222a29'/>
<id>urn:sha1:6666ca9192f3bdf839aad33b9e1c9ebb7a222a29</id>
<content type='text'>
Make the iteration over the addresses in the VMA more explicit.
No functional change, as the VMA matches the GEM object exactly.

Signed-off-by: Ilia Levi &lt;ilia.levi@intel.com&gt;
Reviewed-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Signed-off-by: Matthew Auld &lt;matthew.auld@intel.com&gt;
Link: https://patch.msgid.link/20260908165046.1393557-13-matthew.auld@intel.com
</content>
</entry>
</feed>
