public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: "Govindapillai, Vinod" <vinod.govindapillai@intel.com>
To: "ville.syrjala@linux.intel.com" <ville.syrjala@linux.intel.com>,
	"Nikula,  Jani" <jani.nikula@intel.com>
Cc: "igt-dev@lists.freedesktop.org" <igt-dev@lists.freedesktop.org>,
	"Reddy Guddati, Santhosh" <santhosh.reddy.guddati@intel.com>,
	"Sharma, Swati2" <swati2.sharma@intel.com>
Subject: Re: [PATCH i-g-t 1/4] tests/intel/kms_frontbuffer_tracking: update the outdated fbc status checks
Date: Tue, 31 Mar 2026 10:49:53 +0000	[thread overview]
Message-ID: <33e3c1e6a8a4b3e0e771d73f638d0ea3b5136785.camel@intel.com> (raw)
In-Reply-To: <acW28s0esy571c5F@intel.com>

On Fri, 2026-03-27 at 00:45 +0200, Ville Syrjälä wrote:
> 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...
> 

Just to clarify, I had considered this when I was reviewing the IGT
patch for enabling FBC on planes 0, 1 and 2. The fbc statuc check for
planes do use a bigger buffer. I did not asked for a change to these
above FBC disabled status-es, as the driver is printing the disabled
status on the first line itself and existing buffer length should
cover. 

But, anyway, I will change this as well to reflect the bigger buffer
size and probably use one single declaration on lib/tests/intel_fbc.h

BR
Vinod

  reply	other threads:[~2026-03-31 10:50 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ä
2026-03-31 10:49       ` Govindapillai, Vinod [this message]
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=33e3c1e6a8a4b3e0e771d73f638d0ea3b5136785.camel@intel.com \
    --to=vinod.govindapillai@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=ville.syrjala@linux.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