kernel/silence-fbcon-logo.patch
Josh Boyer 3222f9a9b7 Don't use early_param if fbcon is a module
Upstream 0-day testing has reported build issues with this patch when
fbcon is built as a module:

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/jwboyer/fedora.git rawhide
head:   bb46fd92b76deb12e06d53bc79db187c5217e540
commit: 3eb6be4c89daa67620490f9126fa8b7218963edc [16/51] silence fbcon logo
config: x86_64-randconfig-s1-08210816 (attached as .config)
compiler: gcc-4.4 (Debian 4.4.7-8) 4.4.7
reproduce:
        git checkout 3eb6be4c89daa67620490f9126fa8b7218963edc
        # save the attached .config to linux build tree
        make ARCH=x86_64

All errors (new ones prefixed by >>):

   drivers/video/console/fbcon.c:3633: error: expected declaration specifiers or '...' before string constant
   drivers/video/console/fbcon.c:3633: error: expected declaration specifiers or '...' before 'quiet_logo'
   drivers/video/console/fbcon.c:3633: warning: data definition has no type or storage class
>> drivers/video/console/fbcon.c:3633: error: type defaults to 'int' in declaration of 'early_param'
>> drivers/video/console/fbcon.c:3633: error: function declaration isn't a prototype

vim +3633 drivers/video/console/fbcon.c

  3627  static int __init quiet_logo(char *str)
  3628  {
  3629          logo_shown = FBCON_LOGO_DONTSHOW;
  3630          return 0;
  3631  }
  3632
> 3633  early_param("quiet", quiet_logo);
  3634
  3635  fs_initcall(fb_console_init);
  3636

This is because early_param is only defined in the #ifndef MODULE case.
Fedora always builds this as =y, so just move the code inside the #else
case.
2016-08-22 15:17:46 -04:00

59 lines
1.5 KiB
Diff

From a8a15723637c6dfbd5042b5c3453d31f5815f044 Mon Sep 17 00:00:00 2001
From: "kernel-team@fedoraproject.org" <kernel-team@fedoraproject.org>
Date: Thu, 29 Jul 2010 16:46:31 -0700
Subject: [PATCH] silence fbcon logo
Bugzilla: N/A
Upstream-status: Fedora mustard
---
drivers/video/console/fbcon.c | 26 +++++++++++++++++++-------
1 file changed, 19 insertions(+), 7 deletions(-)
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index afd3301ac40c..2e08ba0ade3e 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -634,13 +634,15 @@ static void fbcon_prepare_logo(struct vc_data *vc, struct fb_info *info,
kfree(save);
}
- if (logo_lines > vc->vc_bottom) {
- logo_shown = FBCON_LOGO_CANSHOW;
- printk(KERN_INFO
- "fbcon_init: disable boot-logo (boot-logo bigger than screen).\n");
- } else if (logo_shown != FBCON_LOGO_DONTSHOW) {
- logo_shown = FBCON_LOGO_DRAW;
- vc->vc_top = logo_lines;
+ if (logo_shown != FBCON_LOGO_DONTSHOW) {
+ if (logo_lines > vc->vc_bottom) {
+ logo_shown = FBCON_LOGO_CANSHOW;
+ printk(KERN_INFO
+ "fbcon_init: disable boot-logo (boot-logo bigger than screen).\n");
+ } else {
+ logo_shown = FBCON_LOGO_DRAW;
+ vc->vc_top = logo_lines;
+ }
}
}
#endif /* MODULE */
@@ -3654,6 +3656,16 @@ static void __exit fb_console_exit(void)
module_exit(fb_console_exit);
+#else
+
+static int __init quiet_logo(char *str)
+{
+ logo_shown = FBCON_LOGO_DONTSHOW;
+ return 0;
+}
+
+early_param("quiet", quiet_logo);
+
#endif
MODULE_LICENSE("GPL");
--
2.7.4