Thanks for this! We definitely need more logging like this in DRM. for patches 1 and 2: Reviewed-by: Lyude Paul <lyude@xxxxxxxxxx> On Mon, 2022-08-29 at 15:14 +0000, Simon Ser wrote: > Sometimes drivers are missing logs when they return EINVAL. > Printing the failure here in common code can help understand where > EINVAL is coming from. > > All other atomic_check() calls in this file already have similar > logging. > > v2: add missing newlines > > Signed-off-by: Simon Ser <contact@xxxxxxxxxxx> > Cc: Daniel Vetter <daniel.vetter@xxxxxxxx> > Cc: Lyude Paul <lyude@xxxxxxxxxx> > --- > drivers/gpu/drm/drm_atomic_helper.c | 12 ++++++++++-- > 1 file changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c > index c6abfd3d4b62..4aa05b626b57 100644 > --- a/drivers/gpu/drm/drm_atomic_helper.c > +++ b/drivers/gpu/drm/drm_atomic_helper.c > @@ -702,8 +702,12 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, > > if (funcs->atomic_check) > ret = funcs->atomic_check(connector, state); > - if (ret) > + if (ret) { > + drm_dbg_atomic(dev, > + "[CONNECTOR:%d:%s] driver check failed\n", > + connector->base.id, connector->name); > return ret; > + } > > connectors_mask |= BIT(i); > } > @@ -745,8 +749,12 @@ drm_atomic_helper_check_modeset(struct drm_device *dev, > > if (funcs->atomic_check) > ret = funcs->atomic_check(connector, state); > - if (ret) > + if (ret) { > + drm_dbg_atomic(dev, > + "[CONNECTOR:%d:%s] driver check failed\n", > + connector->base.id, connector->name); > return ret; > + } > } > > /* -- Cheers, Lyude Paul (she/her) Software Engineer at Red Hat