public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Wang, X" <x.wang@intel.com>
To: "Summers, Stuart" <stuart.summers@intel.com>,
	"igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>,
	"Nguyen, Brian3" <brian3.nguyen@intel.com>
Subject: Re: [PATCH 0/4] tests/xe: Add xe_page_reclaim test suite
Date: Mon, 13 Apr 2026 15:12:53 -0700	[thread overview]
Message-ID: <3e562204-5bf8-4a2b-a143-78a11a5e4d58@intel.com> (raw)
In-Reply-To: <9e8c7eefbc307dbeb5553b26759ddd69120897fa.camel@intel.com>


On 4/7/2026 12:15, Summers, Stuart wrote:
> On Mon, 2026-04-06 at 18:42 +0000, Brian Nguyen wrote:
>> Page Reclamation is a Xe3p feature that optimizes TLB invalidations
>> by targeting only the specific physical pages being unmapped, rather
>> than
>> issuing a full PPC flush. With Page Reclamation, the driver maintains
>> a
>> Page Reclaim List (PRL), on the backing pages of a VMA range, which
>> is
>> passed into the hardware, limiting the flush to only the affected
>> pages.
>>
>> PRL supports up to 512 entries and beyond that results in a fallback
>> to
>> full TLB invalidation, and invalidating the PRL. The page reclamation
>> test
>> cases validate different combinations of the possible VMA ranges.
>>
>> The primary source of validation of these cases is derived from the
>> gt_stats in debugfs to confirm the proper PRL generation.
> Just a high level question here, assuming the page reclamation is
> happening at every invalidation and we should be getting coverage
> generally across many of our tests (e.g. xe_* --r *invalidation*),
> would it make sense to reduce the test scope here by just adding hooks
> to the existing tests to check counters - and this kind of
> infrastructure could potentially even go beyond just page
> reclamation...
>
> Or maybe another kind of related question, if we are adding some
> explicit invalidation sizes/alignments here, are we not covering that
> in some of the other tests like xe_vm?
>
> Thanks,
> Stuart

Hi Stuart,


Thanks for the questions.
The page reclamation suite focuses on specific VMA
configurations and allocation sizes to validate PRL
correctness and edge cases. These need purpose-built
setups with known expected outputs, so a standalone
test is more appropriate here.
Hooking PRL checks into existing tests like xe_vm
wouldn't give us reliable validation — those tests
have their own allocation patterns not designed with
PRL in mind, and PRL is already running behind the
scenes regardless. Spreading PRL logic across many
tests also makes future maintenance harder.

Thanks,

Xin
>> Brian Nguyen (4):
>>    tests/xe: Add page reclaim test
>>    tests/xe: Add random page reclaim subtest
>>    tests/xe: Add transient display PRL skip
>>    tests/xe: Add large VMA range tests for better coverage
>>
>>   tests/intel/xe_page_reclaim.c | 826
>> ++++++++++++++++++++++++++++++++++
>>   tests/meson.build             |   1 +
>>   2 files changed, 827 insertions(+)
>>   create mode 100644 tests/intel/xe_page_reclaim.c
>>

      parent reply	other threads:[~2026-04-13 22:13 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-06 18:42 [PATCH 0/4] tests/xe: Add xe_page_reclaim test suite Brian Nguyen
2026-04-06 18:42 ` [PATCH 1/4] tests/xe: Add page reclaim test Brian Nguyen
2026-04-13 22:14   ` Wang, X
2026-04-06 18:42 ` [PATCH 2/4] tests/xe: Add random page reclaim subtest Brian Nguyen
2026-04-13 22:14   ` Wang, X
2026-04-06 18:42 ` [PATCH 3/4] tests/xe: Add transient display PRL skip Brian Nguyen
2026-04-13 22:15   ` Wang, X
2026-04-06 18:42 ` [PATCH 4/4] tests/xe: Add large VMA range tests for better coverage Brian Nguyen
2026-04-13 22:16   ` Wang, X
2026-04-06 19:29 ` ✓ Xe.CI.BAT: success for tests/xe: Add xe_page_reclaim test suite Patchwork
2026-04-06 19:45 ` ✓ i915.CI.BAT: " Patchwork
2026-04-06 21:45 ` ✓ i915.CI.Full: " Patchwork
2026-04-07  0:23 ` ✗ Xe.CI.FULL: failure " Patchwork
2026-04-07 19:15 ` [PATCH 0/4] " Summers, Stuart
2026-04-07 22:02   ` Nguyen, Brian3
2026-04-13 22:12   ` Wang, X [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3e562204-5bf8-4a2b-a143-78a11a5e4d58@intel.com \
    --to=x.wang@intel.com \
    --cc=brian3.nguyen@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=stuart.summers@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox