Re: [PATCH] Revert "drm/fb-helper: improve DRM fbdev emulation device names"

From: Daniel Vetter
Date: Wed Oct 13 2021 - 08:27:32 EST


On Fri, Oct 08, 2021 at 02:02:40PM +0300, Ville Syrjälä wrote:
> On Fri, Oct 08, 2021 at 09:17:08AM +0200, Javier Martinez Canillas wrote:
> > This reverts commit b3484d2b03e4c940a9598aa841a52d69729c582a.
> >
> > That change attempted to improve the DRM drivers fbdev emulation device
> > names to avoid having confusing names like "simpledrmdrmfb" in /proc/fb.
> >
> > But unfortunately there are user-space programs, such as pm-utils that
> > query that information and so broke after the mentioned commit. Since
> > the names in /proc/fb are used programs that consider it an ABI, let's
> > restore the old names even when this lead to silly naming like the one
> > mentioned above as an example.
>
> The usage Johannes listed was this specificially:
> using_kms() { grep -q -E '(nouveau|drm)fb' /proc/fb; }
>
> So it actually looks like Daniel's
> commit f243dd06180a ("drm/nouveau: Use drm_fb_helper_fill_info")
> also broke the abi. But for the pm-utils use case at least
> just having the "drmfb" in there should cover even nouveau.
>
> Cc: stable@xxxxxxxxxxxxxxx
> Reviewed-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx>
>
> >
> > Reported-by: Johannes Stezenbach <js@xxxxxxxxx>
> > Signed-off-by: Javier Martinez Canillas <javierm@xxxxxxxxxx>
> > ---
> >
> > drivers/gpu/drm/drm_fb_helper.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c
> > index 3ab07832104..8993b02e783 100644
> > --- a/drivers/gpu/drm/drm_fb_helper.c
> > +++ b/drivers/gpu/drm/drm_fb_helper.c
> > @@ -1737,7 +1737,7 @@ void drm_fb_helper_fill_info(struct fb_info *info,
> > sizes->fb_width, sizes->fb_height);
> >
> > info->par = fb_helper;
> > - snprintf(info->fix.id, sizeof(info->fix.id), "%s",

Please add a comment here that drmfb is uapi because pm-utils matches
against it ...

Otherwise this will be lost in time again :-(
-Daniel
> > + snprintf(info->fix.id, sizeof(info->fix.id), "%sdrmfb",
> > fb_helper->dev->driver->name);
> >
> > }
> > --
> > 2.31.1
>
> --
> Ville Syrjälä
> Intel

--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch