public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: Jani Nikula <jani.nikula@intel.com>
Cc: Vinod Govindapillai <vinod.govindapillai@intel.com>,
	igt-dev@lists.freedesktop.org, santhosh.reddy.guddati@intel.com,
	swati2.sharma@intel.com
Subject: Re: [PATCH i-g-t 1/4] tests/intel/kms_frontbuffer_tracking: update the outdated fbc status checks
Date: Fri, 27 Mar 2026 00:45:06 +0200	[thread overview]
Message-ID: <acW28s0esy571c5F@intel.com> (raw)
In-Reply-To: <e2800fef737c676e44f15a7be8441ce89cae66f3@intel.com>

On Thu, Mar 26, 2026 at 11:27:47AM +0200, Jani Nikula wrote:
> On Thu, 26 Mar 2026, Vinod Govindapillai <vinod.govindapillai@intel.com> wrote:
> > Replace the fbc status check for "mode too large for compression" wchich
> > is no longer being set by the driver with "plane size too big" and
> > "surface size too big" fbc status checks.
> >
> > Signed-off-by: Vinod Govindapillai <vinod.govindapillai@intel.com>
> > ---
> >  tests/intel/kms_frontbuffer_tracking.c | 17 +++++++++++++----
> >  1 file changed, 13 insertions(+), 4 deletions(-)
> >
> > diff --git a/tests/intel/kms_frontbuffer_tracking.c b/tests/intel/kms_frontbuffer_tracking.c
> > index c16f63199..e764c9ce1 100644
> > --- a/tests/intel/kms_frontbuffer_tracking.c
> > +++ b/tests/intel/kms_frontbuffer_tracking.c
> > @@ -1664,15 +1664,23 @@ static bool fbc_stride_not_supported(void)
> >  	char buf[128];
> >  
> >  	debugfs_read_crtc("i915_fbc_status", buf);
> > -	return strstr(buf, "FBC disabled: framebuffer stride not supported\n");
> > +	return strstr(buf, "FBC disabled: stride not supported\n");
> >  }
> >  
> > -static bool fbc_mode_too_large(void)
> > +static bool fbc_plane_size_too_big(void)
> >  {
> >  	char buf[128];
> >  
> >  	debugfs_read_crtc("i915_fbc_status", buf);
> > -	return strstr(buf, "FBC disabled: mode too large for compression\n");
> > +	return strstr(buf, "FBC disabled: plane size too big\n");
> > +}
> > +
> > +static bool fbc_surface_size_too_big(void)
> > +{
> > +	char buf[128];
> > +
> > +	debugfs_read_crtc("i915_fbc_status", buf);
> > +	return strstr(buf, "FBC disabled: surface size too big\n");
> >  }
> >  
> >  static bool fbc_psr_not_possible(void)
> > @@ -2356,7 +2364,8 @@ static void do_status_assertions(int flags)
> >  	if (flags & ASSERT_FBC_ENABLED) {
> >  		igt_require(!fbc_not_enough_stolen());
> >  		igt_require(!fbc_stride_not_supported());
> > -		igt_require(!fbc_mode_too_large());
> > +		igt_require(!fbc_plane_size_too_big());
> > +		igt_require(!fbc_surface_size_too_big());
> 
> I think the problem with the current implementation and this series is
> that it still keeps all those i915_fbc_status reads in place, instead of
> reading it *once* and then figuring it out.
> 
> You could e.g. have a function that reads i915_fbc_status, parses it
> into, I don't know, an enum on the igt side, with some handling of
> unknown "FBC disabled: xxx" messages, and returns that.
> 
> And then you get that status once, and check that, instead of reading
> the file N times.

The other big problem is that the buffer size used for this is too 
small. A while ago I noticed that it was getting chopped off so I
have a patch in some branch that doubles it. But dunno if even that
is sufficient on the latest platforms with more and more FBC capable
planes. Someone should probably check that...

-- 
Ville Syrjälä
Intel

  reply	other threads:[~2026-03-26 22:45 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-03-26  7:25 [PATCH i-g-t 0/4] updates to fbc tests Vinod Govindapillai
2026-03-26  7:25 ` [PATCH i-g-t 1/4] tests/intel/kms_frontbuffer_tracking: update the outdated fbc status checks Vinod Govindapillai
2026-03-26  9:27   ` Jani Nikula
2026-03-26 22:45     ` Ville Syrjälä [this message]
2026-03-31 10:49       ` Govindapillai, Vinod
2026-04-10 14:14       ` Kamil Konieczny
2026-03-26  7:25 ` [PATCH i-g-t 2/4] lib/i915/fbc: extract intel_fbc_get_fbc_status() Vinod Govindapillai
2026-03-26  7:25 ` [PATCH i-g-t 3/4] tests/intel/kms_frontbuffer_tracking: use intel_fbc_get_fbc_status() Vinod Govindapillai
2026-03-26  7:25 ` [PATCH i-g-t 4/4] tests/intel/kms_fbc_dirty_rect: check the plane size before fbc dirty rect tests Vinod Govindapillai
2026-03-27  5:05   ` Reddy Guddati, Santhosh
2026-03-27  8:11     ` Govindapillai, Vinod
2026-03-31  7:22       ` Reddy Guddati, Santhosh
2026-03-26 13:43 ` ✓ Xe.CI.BAT: success for updates to fbc tests Patchwork
2026-03-26 14:00 ` ✓ i915.CI.BAT: " Patchwork
2026-03-27  3:45 ` ✓ Xe.CI.FULL: " Patchwork
2026-03-27  8:48 ` ✗ i915.CI.Full: failure " Patchwork

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=acW28s0esy571c5F@intel.com \
    --to=ville.syrjala@linux.intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=jani.nikula@intel.com \
    --cc=santhosh.reddy.guddati@intel.com \
    --cc=swati2.sharma@intel.com \
    --cc=vinod.govindapillai@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