Re: [Intel-gfx] [PATCH 2/3] drm: Sync errno values for property lookup errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jan 25, 2019 at 11:01:48PM +0200, Ville Syrjälä wrote:
> On Tue, Jan 22, 2019 at 10:39:38AM +0100, Daniel Vetter wrote:
> > On Mon, Jan 21, 2019 at 10:24:29PM +0200, Ville Syrjala wrote:
> > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > > 
> > > Use ENOENT consistently for the case where the requested property
> > > isn't found, and EINVAL for the case where the object has no
> > > properties whatsoever. Currenrly these are handled differently
> > > in the atomic and legacy codepaths.
> > > 
> > > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
> > 
> > Matches https://dri.freedesktop.org/docs/drm/gpu/drm-uapi.html#recommended-ioctl-return-values
> > 
> > Reviewed-by: Daniel Vetter <daniel.vetter@xxxxxxxx>
> > 
> > Any igts that blow up with this? We should have at least some trying to do
> > invalid stuff ...
> 
> Looks like there was something caught by ci. I'll have to look those
> over.
> 
> Also the logs seem to full of my
> <7> [625.952666] [drm:drm_modeset_backoff] Retrying to avoid deadlock
> 
> Not sure if that debug print is a good idea after all :/

Make it conditional on !CONFIG_WW_MUTEX_DEBUG_SLOWPATH. With that set
(which CI does) you'll get tons of retries.

Or maybe that's the point of all this? We do an awful lot of retries in
CI, to make sure all the error paths work correctly. ww_mutex locking is
essntially our kms error injection tool :-)
-Daniel

> 
> > -Daniel
> > 
> > > ---
> > >  drivers/gpu/drm/drm_atomic_uapi.c | 2 +-
> > >  drivers/gpu/drm/drm_mode_object.c | 1 +
> > >  2 files changed, 2 insertions(+), 1 deletion(-)
> > > 
> > > diff --git a/drivers/gpu/drm/drm_atomic_uapi.c b/drivers/gpu/drm/drm_atomic_uapi.c
> > > index 06390307e5a3..2a54f826cf65 100644
> > > --- a/drivers/gpu/drm/drm_atomic_uapi.c
> > > +++ b/drivers/gpu/drm/drm_atomic_uapi.c
> > > @@ -1330,7 +1330,7 @@ int drm_mode_atomic_ioctl(struct drm_device *dev,
> > >  			DRM_DEBUG_ATOMIC("Object ID %d has no properties\n",
> > >  					 obj_id);
> > >  			drm_mode_object_put(obj);
> > > -			ret = -ENOENT;
> > > +			ret = -EINVAL;
> > >  			goto out;
> > >  		}
> > >  
> > > diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_object.c
> > > index e8dac94d576d..31730d935842 100644
> > > --- a/drivers/gpu/drm/drm_mode_object.c
> > > +++ b/drivers/gpu/drm/drm_mode_object.c
> > > @@ -527,6 +527,7 @@ int drm_mode_obj_set_property_ioctl(struct drm_device *dev, void *data,
> > >  	property = drm_mode_obj_find_prop_id(arg_obj, arg->prop_id);
> > >  	if (!property) {
> > >  		DRM_DEBUG_KMS("Unknown property ID %d\n", arg->prop_id);
> > > +		ret = -ENOENT;
> > >  		goto out_unref;
> > >  	}
> > >  
> > > -- 
> > > 2.19.2
> > > 
> > > _______________________________________________
> > > Intel-gfx mailing list
> > > Intel-gfx@xxxxxxxxxxxxxxxxxxxxx
> > > https://lists.freedesktop.org/mailman/listinfo/intel-gfx
> > 
> > -- 
> > Daniel Vetter
> > Software Engineer, Intel Corporation
> > http://blog.ffwll.ch
> 
> -- 
> Ville Syrjälä
> Intel

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux