[PATCH] drm/xe/xe3: Disable null query for anyhit shader
Gote, Nitin R
nitin.r.gote at intel.com
Wed Jun 4 09:35:35 UTC 2025
Hi Matt,
> -----Original Message-----
> From: Roper, Matthew D <matthew.d.roper at intel.com>
> Sent: Wednesday, June 4, 2025 4:29 AM
> To: Gote, Nitin R <nitin.r.gote at intel.com>
> Cc: Sousa, Gustavo <gustavo.sousa at intel.com>; intel-xe at lists.freedesktop.org;
> joonas.lahtinen at linux.intel.com; Ghimiray, Himal Prasad
> <himal.prasad.ghimiray at intel.com>; Upadhyay, Tejas
> <tejas.upadhyay at intel.com>
> Subject: Re: [PATCH] drm/xe/xe3: Disable null query for anyhit shader
>
> On Mon, May 12, 2025 at 06:02:54PM +0530, Nitin Gote wrote:
> > Set DIS_NULL_QUERY bit of RT_CTRL register to disable null query for
> > anyhit shader for Xe3 IP.
> >
> > Reviewed-by: Gustavo Sousa <gustavo.sousa at intel.com>
> > Reviewed-by: Tejas Upadhyay <tejas.upadhyay at intel.com>
> > Signed-off-by: Nitin Gote <nitin.r.gote at intel.com>
> > ---
> > Hi Matt and Gustavo,
> >
> > On PTL, Default value of DIS_NULL_QUERY bit of RT_CTRL is '0' only.
> > Last time, I have incorrectly read a value.
> > So, this change is required as per request.
> >
> > Parallely, I will request to update bspec properly with default value
> > and also proper entry for tuning.
> >
> > Changes in v2:
> > - Use xe3 IP and not ptl in commit title
> > as this is not platform specific.(Gustavo Sousa)
> > - Update a commit details properly (Matt)
> >
> > drivers/gpu/drm/xe/xe_tuning.c | 5 +++++
> > 1 file changed, 5 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/xe/xe_tuning.c
> > b/drivers/gpu/drm/xe/xe_tuning.c index 49ddbda7cdef..6f2f3428b12e
> > 100644
> > --- a/drivers/gpu/drm/xe/xe_tuning.c
> > +++ b/drivers/gpu/drm/xe/xe_tuning.c
> > @@ -98,6 +98,11 @@ static const struct xe_rtp_entry_sr engine_tunings[] = {
> > ENGINE_CLASS(RENDER)),
> > XE_RTP_ACTIONS(SET(SAMPLER_MODE,
> INDIRECT_STATE_BASE_ADDR_OVERRIDE))
> > },
> > + { XE_RTP_NAME("Tuning: Disable NULL query for Anyhit Shader"),
> > + XE_RTP_RULES(GRAPHICS_VERSION_RANGE(3000, 3001),
>
> I hear a bspec update is pending to document the default values properly. But is
> this truly specific to 30.00 and 30.01? What about the 30.03 that's in the process
> of being enabled right now? If this is general programming, then we should really
> just use XE_RTP_END_VERSION_UNDEFINED as the upper bound for now; we
> can replace that with a real end version if some future platform eventually flips
> the default value (or eliminates this register completely).
>
Yes. I agree with you.
I will update XE_RTP_END_VERSION_UNDEFINED as the upper bound in new patch version.
- Nitin
> I'm also still unclear on whether we also need to be doing this on the
> Xe2 platforms too or not? According to the note in the bspec, a value of "0" for
> this bit isn't valid from Xe2 onward, so if Xe2 also has the wrong hardware
> default, then wouldn't we need to handle it on those platforms too?
>
>
> Matt
>
> > + FUNC(xe_rtp_match_first_render_or_compute)),
> > + XE_RTP_ACTIONS(SET(RT_CTRL, DIS_NULL_QUERY))
> > + },
> > };
> >
> > static const struct xe_rtp_entry_sr lrc_tunings[] = {
> > --
> > 2.25.1
> >
>
> --
> Matt Roper
> Graphics Software Engineer
> Linux GPU Platform Enablement
> Intel Corporation
More information about the Intel-xe
mailing list