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.
This commit is contained in:
Josh Boyer 2016-08-22 15:17:46 -04:00
parent 114729e728
commit 3222f9a9b7
1 changed files with 14 additions and 8 deletions

View File

@ -1,3 +1,4 @@
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
@ -5,11 +6,11 @@ Subject: [PATCH] silence fbcon logo
Bugzilla: N/A
Upstream-status: Fedora mustard
---
drivers/video/console/fbcon.c | 24 +++++++++++++++++-------
1 file changed, 17 insertions(+), 7 deletions(-)
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 658c34bb9076..25ab00980e4c 100644
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,
@ -35,10 +36,12 @@ index 658c34bb9076..25ab00980e4c 100644
}
}
#endif /* MODULE */
@@ -3621,6 +3623,14 @@ static int __init fb_console_init(void)
return 0;
}
@@ -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;
@ -47,6 +50,9 @@ index 658c34bb9076..25ab00980e4c 100644
+
+early_param("quiet", quiet_logo);
+
fs_initcall(fb_console_init);
#endif
#ifdef MODULE
MODULE_LICENSE("GPL");
--
2.7.4