[Intel-gfx] [PATCH i-g-t v2 RESEND] tests/kms_fbcon_fbt: Report fbc_status on error
Paulo Zanoni
paulo.r.zanoni at intel.com
Mon Nov 6 20:00:32 UTC 2017
Em Seg, 2017-11-06 às 16:16 -0200, Gabriel Krisman Bertazi escreveu:
> Paulo Zanoni <paulo.r.zanoni at intel.com> writes:
>
> > Em Seg, 2017-10-30 às 15:54 -0200, Gabriel Krisman Bertazi
> > escreveu:
> > > knowing the assertion triggered on wait_until_enabled() is not
> > > that
> > > useful without knowing what exactly caused the failure. It might
> > > be
> > > an
> > > user error, like too little stolen memory by the bios, or an
> > > actual
> > > issue in the kernel. So, let's make life easier, particularly
> > > for
> > > the
> > > CI, by printing the status before failing out.
> > >
> > > Case in point:
> > >
> > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101718
> > >
> > > Signed-off-by: Gabriel Krisman Bertazi <krisman at collabora.co.uk>
> > > ---
> > > tests/kms_fbcon_fbt.c | 24 ++++++++++++++++++++++--
> > > 1 file changed, 22 insertions(+), 2 deletions(-)
> > >
> > > diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
> > > index d0090912694e..8371be5612f5 100644
> > > --- a/tests/kms_fbcon_fbt.c
> > > +++ b/tests/kms_fbcon_fbt.c
> > > @@ -95,6 +95,14 @@ static bool
> > > connector_can_fbc(drmModeConnectorPtr
> > > connector)
> > > return true;
> > > }
> > >
> > > +static void fbc_print_status(int fd)
> > > +{
> > > + static char buf[128];
> > > +
> > > + igt_debugfs_read(fd, "i915_fbc_status", buf);
> > > + igt_debug("FBC status: %s\n", buf);
> > > +}
> > > +
> > > static bool fbc_is_enabled(int fd)
> > > {
> > > char buf[128];
> > > @@ -105,7 +113,9 @@ static bool fbc_is_enabled(int fd)
> > >
> > > static bool fbc_wait_until_enabled(int fd)
> > > {
> > > - return igt_wait(fbc_is_enabled(fd), 5000, 1);
> > > + bool r = igt_wait(fbc_is_enabled(fd), 5000, 1);
> > > + fbc_print_status(fd);
> > > + return r;
> > > }
> > >
> > > typedef bool (*connector_possible_fn)(drmModeConnectorPtr
> > > connector);
> > > @@ -160,6 +170,14 @@ static bool
> > > connector_can_psr(drmModeConnectorPtr connector)
> > > return (connector->connector_type ==
> > > DRM_MODE_CONNECTOR_eDP);
> > > }
> > >
> > > +static void psr_print_status(int fd)
> > > +{
> > > + static char buf[256];
> > > +
> > > + igt_debugfs_read(fd, "i915_edp_psr_status", buf);
> > > + igt_debug("FBC status: %s\n", buf);
> >
> > s/FBC/PSR/
>
> Oops!
>
> >
> > With that fixed:
> > Reviewed-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
>
> Hi Paulo,
>
> Thanks for your review. Can you push the version below, then? I
> don't
> have commit rights on igt.
Pushed. Thanks for the patch!
>
> > 8
>
> Subject: [PATCH i-g-t] tests/kms_fbcon_fbt: Report fbc_status on
> error
>
> knowing the assertion triggered on wait_until_enabled() is not that
> useful without knowing what exactly caused the failure. It might be
> an
> user error, like too little stolen memory by the bios, or an actual
> issue in the kernel. So, let's make life easier, particularly for
> the
> CI, by printing the status before failing out.
>
> Case in point:
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101718
>
> Signed-off-by: Gabriel Krisman Bertazi <krisman at collabora.co.uk>
> Reviewed-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
> ---
> tests/kms_fbcon_fbt.c | 24 ++++++++++++++++++++++--
> 1 file changed, 22 insertions(+), 2 deletions(-)
>
> diff --git a/tests/kms_fbcon_fbt.c b/tests/kms_fbcon_fbt.c
> index d0090912694e..51f1172839ed 100644
> --- a/tests/kms_fbcon_fbt.c
> +++ b/tests/kms_fbcon_fbt.c
> @@ -95,6 +95,14 @@ static bool connector_can_fbc(drmModeConnectorPtr
> connector)
> return true;
> }
>
> +static void fbc_print_status(int fd)
> +{
> + static char buf[128];
> +
> + igt_debugfs_read(fd, "i915_fbc_status", buf);
> + igt_debug("FBC status: %s\n", buf);
> +}
> +
> static bool fbc_is_enabled(int fd)
> {
> char buf[128];
> @@ -105,7 +113,9 @@ static bool fbc_is_enabled(int fd)
>
> static bool fbc_wait_until_enabled(int fd)
> {
> - return igt_wait(fbc_is_enabled(fd), 5000, 1);
> + bool r = igt_wait(fbc_is_enabled(fd), 5000, 1);
> + fbc_print_status(fd);
> + return r;
> }
>
> typedef bool (*connector_possible_fn)(drmModeConnectorPtr
> connector);
> @@ -160,6 +170,14 @@ static bool
> connector_can_psr(drmModeConnectorPtr connector)
> return (connector->connector_type ==
> DRM_MODE_CONNECTOR_eDP);
> }
>
> +static void psr_print_status(int fd)
> +{
> + static char buf[256];
> +
> + igt_debugfs_read(fd, "i915_edp_psr_status", buf);
> + igt_debug("PSR status: %s\n", buf);
> +}
> +
> static bool psr_is_enabled(int fd)
> {
> char buf[256];
> @@ -170,7 +188,9 @@ static bool psr_is_enabled(int fd)
>
> static bool psr_wait_until_enabled(int fd)
> {
> - return igt_wait(psr_is_enabled(fd), 5000, 1);
> + bool r = igt_wait(psr_is_enabled(fd), 5000, 1);
> + psr_print_status(fd);
> + return r;
> }
>
> struct feature {
More information about the Intel-gfx
mailing list