[PATCH] drm/i915: Autoselect CONFIG_CHECKPOINT_RESTORE for SYS_kcmp

Lucas Stach l.stach at pengutronix.de
Fri Feb 5 16:18:42 UTC 2021


Am Freitag, dem 05.02.2021 um 16:59 +0100 schrieb Daniel Vetter:
> On Fri, Feb 05, 2021 at 04:58:32PM +0100, Daniel Vetter wrote:
> > On Fri, Feb 05, 2021 at 01:03:07PM +0000, Chris Wilson wrote:
> > > gallium (iris) depends on os_same_file_description() to disambiguate
> > > screens and so avoid importing the same screen fd twice as two distinct
> > > entities (that share all the kernel resources, so actions on screen
> > > affect the other and would cause random faiure). As they depend on it,
> > > so must we. os_same_file_description() uses SYS_kcmp to check the file
> > > tables for the equivalent struct file, but SYS_kcmp is hidden behind
> > > CONFIG_CHECKPOINT_RESTORE. As this is not default, we must select it for
> > > ourselves to ensure that our userspace is fully supported.
> > > 
> > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/3046
> > > Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> > > Cc: Jani Nikula <jani.nikula at intel.com>
> > > Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> > 
> > Hm shouldn't we crank this up to CONFIG_DRM?
> > 
> > Or embedded folks going to be unhappy about that? If so I guess we'd need
> > to pull out just the SYS_kcmp part ...
> > 
> > Asking because I think Bas is also looking at this, and it's not great if
> > we're building on this and then users end up with very subtly broken gl/vk
> > stacks :-/

amdgpu gallium winsys seems to also require this, so selecting it from
higher up in the Kconfig tree makes sense and I don't think embedded
would be massively unhappy about this. However kcmp seems to be useful
on its own and pulling it out of CHECKPOINT_RESTORE sounds like the
right thing to do.

Regards,
Lucas

> 
> > -Daniel
> > 
> > > ---
> > >  drivers/gpu/drm/i915/Kconfig | 1 +
> > >  1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/drivers/gpu/drm/i915/Kconfig b/drivers/gpu/drm/i915/Kconfig
> > > index 1e1cb245fca7..470a5214bd33 100644
> > > --- a/drivers/gpu/drm/i915/Kconfig
> > > +++ b/drivers/gpu/drm/i915/Kconfig
> > > @@ -21,6 +21,7 @@ config DRM_I915
> > >  	select ACPI_VIDEO if ACPI
> > >  	select ACPI_BUTTON if ACPI
> > >  	select SYNC_FILE
> > > +	select CHECKPOINT_RESTORE # gallium depends on SYS_kcmp
> > >  	select IOSF_MBI
> > >  	select CRC32
> > >  	select SND_HDA_I915 if SND_HDA_CORE
> > > -- 
> > > 2.20.1
> > > 
> > 
> > -- 
> > Daniel Vetter
> > Software Engineer, Intel Corporation
> > http://blog.ffwll.ch
> 




More information about the dri-devel mailing list