Ville Syrjälä
2021-Oct-08 11:02 UTC
[Nouveau] [PATCH] Revert "drm/fb-helper: improve DRM fbdev emulation device names"
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 at vger.kernel.org Reviewed-by: Ville Syrj?l? <ville.syrjala at linux.intel.com>> > Reported-by: Johannes Stezenbach <js at sig21.net> > Signed-off-by: Javier Martinez Canillas <javierm at redhat.com> > --- > > 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", > + snprintf(info->fix.id, sizeof(info->fix.id), "%sdrmfb", > fb_helper->dev->driver->name); > > } > -- > 2.31.1-- Ville Syrj?l? Intel
Daniel Vetter
2021-Oct-13 12:27 UTC
[Nouveau] [PATCH] Revert "drm/fb-helper: improve DRM fbdev emulation device names"
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 at vger.kernel.org > Reviewed-by: Ville Syrj?l? <ville.syrjala at linux.intel.com> > > > > > Reported-by: Johannes Stezenbach <js at sig21.net> > > Signed-off-by: Javier Martinez Canillas <javierm at redhat.com> > > --- > > > > 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