Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 637434 - sys-kernel/gentoo-sources-4.14.0 has no fbcondecor support
Summary: sys-kernel/gentoo-sources-4.14.0 has no fbcondecor support
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Gentoo Kernel Bug Wranglers and Kernel Maintainers
URL:
Whiteboard: gentoo-sources-4.14-1
Keywords:
Depends on:
Blocks:
 
Reported: 2017-11-13 23:12 UTC by Conrad Kostecki
Modified: 2020-09-24 20:50 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
4200_fbcondecor.patch (4200_fbcondecor.patch,60.22 KB, patch)
2017-11-13 23:18 UTC, Conrad Kostecki
Details | Diff
4200_fbcondecor.patch (4200_fbcondecor.patch,60.26 KB, patch)
2017-11-14 21:04 UTC, Conrad Kostecki
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Conrad Kostecki gentoo-dev 2017-11-13 23:12:58 UTC
genpatches-4.14-1.extras.tar.xz used by gentoo-sources doesn't include fbcondecor patch :/

My first attempts to fix, but I am still unable to compile.

drivers/video/console/bitblit.c
-> drivers/video/fbdev/core/bitblit.c (still applies after changing to new path in diff)

drivers/video/console/fbcon.c
-> ./drivers/video/fbdev/core/fbcon.c (1 hunk failed, but rest still applies after changing to new path in diff)

The hunk seems to be easy fixable:

 --- drivers/video/fbdev/core/fbcon.c
+++ drivers/video/fbdev/core/fbcon.c
@@ -1317,8 +1337,12 @@ static void fbcon_clear_margins(struct vc_data *vc, int bottom_only)
        struct fb_info *info = registered_fb[con2fb_map[vc->vc_num]];
        struct fbcon_ops *ops = info->fbcon_par;

-       if (!fbcon_is_inactive(vc, info))
-               ops->clear_margins(vc, info, bottom_only);
+       if (!fbcon_is_inactive(vc, info)) {
+               if (fbcon_decor_active(info, vc))
+                       fbcon_decor_clear_margins(vc, info, bottom_only);
+               else
+                       ops->clear_margins(vc, info, bottom_only);
+       }
 }

drivers/video/console/fbcondecor.c
drivers/video/console/cfbcondecor.c
-> Both complained about not finding fbcon.h, changed to #include <linux/fbcon.h>

But compile still fails. Maybe someone has an idea?

  CC      drivers/video/console/cfbcondecor.o
drivers/video/console/cfbcondecor.c: In function 'fbcon_decor_putcs':
drivers/video/console/cfbcondecor.c:184:19: error: dereferencing pointer to incomplete type 'struct fbcon_ops'
  transparent = ops->blank_state ? 0 :
                   ^~
drivers/video/console/cfbcondecor.c: In function 'fbcon_decor_cursor':
drivers/video/console/cfbcondecor.c:213:48: error: dereferencing pointer to incomplete type 'struct fbcon_ops'
  if (info->state != FBINFO_STATE_RUNNING || ops->blank_state)
                                                ^~
drivers/video/console/cfbcondecor.c: In function 'fbcon_decor_clear':
drivers/video/console/cfbcondecor.c:386:30: error: implicit declaration of function 'attr_bgcol_ec' [-Werror=implicit-function-declaration]
  int transparent, bg_color = attr_bgcol_ec(bgshift, vc, info);
                              ^~~~~~~~~~~~~
drivers/video/console/cfbcondecor.c:395:25: error: dereferencing pointer to incomplete type 'struct fbcon_ops'
  if (transparent && !ops->blank_state) {
                         ^~
cc1: some warnings being treated as errors
make[3]: *** [scripts/Makefile.build:315: drivers/video/console/cfbcondecor.o] Error 1
make[2]: *** [scripts/Makefile.build:573: drivers/video/console] Error 2
make[1]: *** [scripts/Makefile.build:573: drivers/video] Error 2
Comment 1 Conrad Kostecki gentoo-dev 2017-11-13 23:18:05 UTC
Created attachment 504128 [details, diff]
4200_fbcondecor.patch
Comment 2 Conrad Kostecki gentoo-dev 2017-11-14 21:04:30 UTC
Sorry, I was on the wrong track. Including the correct files makes it work ;-)
I am attaching a new full patch. This one works for me. It applies, compiles and works with gentoo-sources-4.14. So could we include it again?

At least, I can see my background on tty again. I didn't test bootsplash, as I am not using it, only for background.
Comment 3 Conrad Kostecki gentoo-dev 2017-11-14 21:04:43 UTC
Created attachment 504252 [details, diff]
4200_fbcondecor.patch
Comment 4 Mike Pagano gentoo-dev 2017-11-16 19:09:33 UTC
Thanks for the patch. This is committed and will be released with gentoo-sources-4.14.1.

Author: Mike Pagano <mpagano@gentoo.org>                                                                                                              
Date:   Thu Nov 16 14:08:05 2017 -0500                                                                                                                
                                                                                                                                                      
    fbcondecor bootsplash patch ported by Conrad Kostecki. See bug #637434.
Comment 5 Alice Ferrazzi Gentoo Infrastructure gentoo-dev 2017-11-21 12:01:47 UTC
relased on 4.14.1