* [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB
@ 2013-12-19 13:38 David Herrmann
2013-12-19 15:40 ` Ingo Molnar
2013-12-19 16:18 ` [PATCH v2] " David Herrmann
0 siblings, 2 replies; 5+ messages in thread
From: David Herrmann @ 2013-12-19 13:38 UTC (permalink / raw)
To: linux-kernel
Cc: Takashi Iwai, Ingo Molnar, x86, linux-fbdev, David Herrmann,
stable
Turns out, people do not read help-texts of new config-options and enable
them nonetheless. So several reports came in with X86_SYSFB=y and
FB_SIMPLE=n, which in almost all situations prevents firmware-fbs from
being probed.
X86_SYSFB clearly states that it turns legacy vesa/efi framebuffers into a
format compatible to simplefb (and does nothing else..). So to avoid
further complaints about missing gfx-support during boot, simply depend on
FB_SIMPLE now.
As FB_SIMPLE is disabled by default and usually only enabled on selected
ARM architectures, x86 users should thus never see the X86_SYSFB
config-option. And if they do, everything is fine as simplefb will be
available.
Note that most of the sysfb code is enabled independently of X86_SYSFB.
The config option only selects a compatibility mode for simplefb. It was
introduced to ease the transition to SimpleDRM and disabling fbdev. As
this is still ongoing, there's no need for non-developers to care for
X86_SYSFB so just change the help-text recommendation to "n".
Cc: <stable@vger.kernel.org> # 3.11+
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
---
arch/x86/Kconfig | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index e903c71..9317ede 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2298,6 +2298,7 @@ source "drivers/rapidio/Kconfig"
config X86_SYSFB
bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
+ depends on (FB_SIMPLE = y)
help
Firmwares often provide initial graphics framebuffers so the BIOS,
bootloader or kernel can show basic video-output during boot for
@@ -2320,7 +2321,7 @@ config X86_SYSFB
and others enabled as fallback if a system framebuffer is
incompatible with simplefb.
- If unsure, say Y.
+ If unsure, say N.
endmenu
--
1.8.5.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB
2013-12-19 13:38 [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB David Herrmann
@ 2013-12-19 15:40 ` Ingo Molnar
2013-12-19 15:54 ` David Herrmann
2013-12-19 16:18 ` [PATCH v2] " David Herrmann
1 sibling, 1 reply; 5+ messages in thread
From: Ingo Molnar @ 2013-12-19 15:40 UTC (permalink / raw)
To: David Herrmann
Cc: linux-kernel, Takashi Iwai, x86, linux-fbdev, stable,
H. Peter Anvin, Thomas Gleixner
* David Herrmann <dh.herrmann@gmail.com> wrote:
> Turns out, people do not read help-texts of new config-options and
> enable them nonetheless. [...]
Yeah, I too don't read them either, whenever an option name seems
obvious to enable, so this is really something that happens frequently
;-)
> [...] So several reports came in with X86_SYSFB=y and FB_SIMPLE=n,
> which in almost all situations prevents firmware-fbs from being
> probed.
>
> X86_SYSFB clearly states that it turns legacy vesa/efi framebuffers
> into a format compatible to simplefb (and does nothing else..). So
> to avoid further complaints about missing gfx-support during boot,
> simply depend on FB_SIMPLE now.
>
> As FB_SIMPLE is disabled by default and usually only enabled on
> selected ARM architectures, x86 users should thus never see the
> X86_SYSFB config-option. And if they do, everything is fine as
> simplefb will be available.
>
> Note that most of the sysfb code is enabled independently of
> X86_SYSFB. The config option only selects a compatibility mode for
> simplefb. It was introduced to ease the transition to SimpleDRM and
> disabling fbdev. As this is still ongoing, there's no need for
> non-developers to care for X86_SYSFB so just change the help-text
> recommendation to "n".
>
> Cc: <stable@vger.kernel.org> # 3.11+
> Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
> ---
> arch/x86/Kconfig | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> index e903c71..9317ede 100644
> --- a/arch/x86/Kconfig
> +++ b/arch/x86/Kconfig
> @@ -2298,6 +2298,7 @@ source "drivers/rapidio/Kconfig"
>
> config X86_SYSFB
> bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
> + depends on (FB_SIMPLE = y)
Could that be written as:
depends on FB_SIMPLE
Or is there some complication with modular builds?
> help
> Firmwares often provide initial graphics framebuffers so the BIOS,
> bootloader or kernel can show basic video-output during boot for
> @@ -2320,7 +2321,7 @@ config X86_SYSFB
> and others enabled as fallback if a system framebuffer is
> incompatible with simplefb.
>
> - If unsure, say Y.
> + If unsure, say N.
We might in fact leave this bit alone and suggest 'Y' - with the
robustification fixes it's not possible anymore to crash the boot or
to create an unintentionally headless system, right?
Thanks,
Ingo
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB
2013-12-19 15:40 ` Ingo Molnar
@ 2013-12-19 15:54 ` David Herrmann
2013-12-19 15:58 ` Ingo Molnar
0 siblings, 1 reply; 5+ messages in thread
From: David Herrmann @ 2013-12-19 15:54 UTC (permalink / raw)
To: Ingo Molnar
Cc: linux-kernel, Takashi Iwai, the arch/x86 maintainers,
linux-fbdev@vger.kernel.org, stable, H. Peter Anvin,
Thomas Gleixner
Hi
On Thu, Dec 19, 2013 at 4:40 PM, Ingo Molnar <mingo@kernel.org> wrote:
>
> * David Herrmann <dh.herrmann@gmail.com> wrote:
>
>> Turns out, people do not read help-texts of new config-options and
>> enable them nonetheless. [...]
>
> Yeah, I too don't read them either, whenever an option name seems
> obvious to enable, so this is really something that happens frequently
> ;-)
>
>> [...] So several reports came in with X86_SYSFB=y and FB_SIMPLE=n,
>> which in almost all situations prevents firmware-fbs from being
>> probed.
>>
>> X86_SYSFB clearly states that it turns legacy vesa/efi framebuffers
>> into a format compatible to simplefb (and does nothing else..). So
>> to avoid further complaints about missing gfx-support during boot,
>> simply depend on FB_SIMPLE now.
>>
>> As FB_SIMPLE is disabled by default and usually only enabled on
>> selected ARM architectures, x86 users should thus never see the
>> X86_SYSFB config-option. And if they do, everything is fine as
>> simplefb will be available.
>>
>> Note that most of the sysfb code is enabled independently of
>> X86_SYSFB. The config option only selects a compatibility mode for
>> simplefb. It was introduced to ease the transition to SimpleDRM and
>> disabling fbdev. As this is still ongoing, there's no need for
>> non-developers to care for X86_SYSFB so just change the help-text
>> recommendation to "n".
>>
>> Cc: <stable@vger.kernel.org> # 3.11+
>> Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
>> ---
>> arch/x86/Kconfig | 3 ++-
>> 1 file changed, 2 insertions(+), 1 deletion(-)
>>
>> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
>> index e903c71..9317ede 100644
>> --- a/arch/x86/Kconfig
>> +++ b/arch/x86/Kconfig
>> @@ -2298,6 +2298,7 @@ source "drivers/rapidio/Kconfig"
>>
>> config X86_SYSFB
>> bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
>> + depends on (FB_SIMPLE = y)
>
> Could that be written as:
>
> depends on FB_SIMPLE
>
> Or is there some complication with modular builds?
simplefb is actually "bool" so yeah, I can remove the "= y".
Note that *if* it ever is built as module, it will not get loaded
during boot, thus not showing any boot-messages. But that's true for
vesafb/efifb, too, so we're fine.
>> help
>> Firmwares often provide initial graphics framebuffers so the BIOS,
>> bootloader or kernel can show basic video-output during boot for
>> @@ -2320,7 +2321,7 @@ config X86_SYSFB
>> and others enabled as fallback if a system framebuffer is
>> incompatible with simplefb.
>>
>> - If unsure, say Y.
>> + If unsure, say N.
>
> We might in fact leave this bit alone and suggest 'Y' - with the
> robustification fixes it's not possible anymore to crash the boot or
> to create an unintentionally headless system, right?
Nope, we will not cause a headless system, but the handover to other
fbdev/DRM drivers (other than the common nouveau/radeon/i915) may
still fail without the other patch (x86: sysfb: remove sysfb when
probing real hw).
I will gladly keep the Y, if no-one disagrees. Given that the other
patch is rather complex (and a no-op with X86_SYSFB=n) I wasn't quite
sure. But as SYSFB is set to 'n' now if FB_SIMPLE wasn't explicitly
selected, I think we're fine both ways.
Thanks
David
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB
2013-12-19 15:54 ` David Herrmann
@ 2013-12-19 15:58 ` Ingo Molnar
0 siblings, 0 replies; 5+ messages in thread
From: Ingo Molnar @ 2013-12-19 15:58 UTC (permalink / raw)
To: David Herrmann
Cc: linux-kernel, Takashi Iwai, the arch/x86 maintainers,
linux-fbdev@vger.kernel.org, stable, H. Peter Anvin,
Thomas Gleixner
* David Herrmann <dh.herrmann@gmail.com> wrote:
> Hi
>
> On Thu, Dec 19, 2013 at 4:40 PM, Ingo Molnar <mingo@kernel.org> wrote:
> >
> > * David Herrmann <dh.herrmann@gmail.com> wrote:
> >
> >> Turns out, people do not read help-texts of new config-options and
> >> enable them nonetheless. [...]
> >
> > Yeah, I too don't read them either, whenever an option name seems
> > obvious to enable, so this is really something that happens frequently
> > ;-)
> >
> >> [...] So several reports came in with X86_SYSFB=y and FB_SIMPLE=n,
> >> which in almost all situations prevents firmware-fbs from being
> >> probed.
> >>
> >> X86_SYSFB clearly states that it turns legacy vesa/efi framebuffers
> >> into a format compatible to simplefb (and does nothing else..). So
> >> to avoid further complaints about missing gfx-support during boot,
> >> simply depend on FB_SIMPLE now.
> >>
> >> As FB_SIMPLE is disabled by default and usually only enabled on
> >> selected ARM architectures, x86 users should thus never see the
> >> X86_SYSFB config-option. And if they do, everything is fine as
> >> simplefb will be available.
> >>
> >> Note that most of the sysfb code is enabled independently of
> >> X86_SYSFB. The config option only selects a compatibility mode for
> >> simplefb. It was introduced to ease the transition to SimpleDRM and
> >> disabling fbdev. As this is still ongoing, there's no need for
> >> non-developers to care for X86_SYSFB so just change the help-text
> >> recommendation to "n".
> >>
> >> Cc: <stable@vger.kernel.org> # 3.11+
> >> Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
> >> ---
> >> arch/x86/Kconfig | 3 ++-
> >> 1 file changed, 2 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
> >> index e903c71..9317ede 100644
> >> --- a/arch/x86/Kconfig
> >> +++ b/arch/x86/Kconfig
> >> @@ -2298,6 +2298,7 @@ source "drivers/rapidio/Kconfig"
> >>
> >> config X86_SYSFB
> >> bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
> >> + depends on (FB_SIMPLE = y)
> >
> > Could that be written as:
> >
> > depends on FB_SIMPLE
> >
> > Or is there some complication with modular builds?
>
> simplefb is actually "bool" so yeah, I can remove the "= y".
>
> Note that *if* it ever is built as module, it will not get loaded
> during boot, thus not showing any boot-messages. But that's true for
> vesafb/efifb, too, so we're fine.
>
> >> help
> >> Firmwares often provide initial graphics framebuffers so the BIOS,
> >> bootloader or kernel can show basic video-output during boot for
> >> @@ -2320,7 +2321,7 @@ config X86_SYSFB
> >> and others enabled as fallback if a system framebuffer is
> >> incompatible with simplefb.
> >>
> >> - If unsure, say Y.
> >> + If unsure, say N.
> >
> > We might in fact leave this bit alone and suggest 'Y' - with the
> > robustification fixes it's not possible anymore to crash the boot or
> > to create an unintentionally headless system, right?
>
> Nope, we will not cause a headless system, but the handover to other
> fbdev/DRM drivers (other than the common nouveau/radeon/i915) may
> still fail without the other patch (x86: sysfb: remove sysfb when
> probing real hw).
>
> I will gladly keep the Y, if no-one disagrees. Given that the other
> patch is rather complex (and a no-op with X86_SYSFB=n) I wasn't
> quite sure. But as SYSFB is set to 'n' now if FB_SIMPLE wasn't
> explicitly selected, I think we're fine both ways.
Well, as long as fixes keep coming when people report them, I see no
problem with keeping the 'Y'. Bugs happen.
And I think we want to apply the other fix regardless of the default.
Thanks,
Ingo
^ permalink raw reply [flat|nested] 5+ messages in thread
* [PATCH v2] x86: sysfb: fool-proof CONFIG_X86_SYSFB
2013-12-19 13:38 [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB David Herrmann
2013-12-19 15:40 ` Ingo Molnar
@ 2013-12-19 16:18 ` David Herrmann
1 sibling, 0 replies; 5+ messages in thread
From: David Herrmann @ 2013-12-19 16:18 UTC (permalink / raw)
To: linux-kernel
Cc: H. Peter Anvin, Thomas Gleixner, Ingo Molnar, x86, linux-fbdev,
David Herrmann, stable
Turns out, people do not read help-texts of new config-options and enable
them nonetheless. So several reports came in with X86_SYSFB=y and
FB_SIMPLE=n, which in almost all situations prevents firmware-fbs from
being probed.
X86_SYSFB clearly states that it turns legacy vesa/efi framebuffers into a
format compatible to simplefb (and does nothing else..). So to avoid
further complaints about missing gfx-support during boot, simply depend on
FB_SIMPLE now.
As FB_SIMPLE is disabled by default and usually only enabled on selected
ARM architectures, x86 users should thus never see the X86_SYSFB
config-option. And if they do, everything is fine as simplefb will be
available.
Note that most of the sysfb code is enabled independently of X86_SYSFB.
The config option only selects a compatibility mode for simplefb. It was
introduced to ease the transition to SimpleDRM and disabling fbdev. As
this is still ongoing, there's no need for non-developers to care for
X86_SYSFB so we can safely hide it behind FB_SIMPLE.
Cc: <stable@vger.kernel.org> # 3.11+
Signed-off-by: David Herrmann <dh.herrmann@gmail.com>
---
v2:
- keep the "If unsure, say Y"
- (FB_SIMPLE = y) => FB_SIMPLE
- adjust commit-msg
arch/x86/Kconfig | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index e903c71..c9d2952 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -2298,6 +2298,7 @@ source "drivers/rapidio/Kconfig"
config X86_SYSFB
bool "Mark VGA/VBE/EFI FB as generic system framebuffer"
+ depends on FB_SIMPLE
help
Firmwares often provide initial graphics framebuffers so the BIOS,
bootloader or kernel can show basic video-output during boot for
--
1.8.5.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-12-19 16:18 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-12-19 13:38 [PATCH] x86: sysfb: fool-proof CONFIG_X86_SYSFB David Herrmann
2013-12-19 15:40 ` Ingo Molnar
2013-12-19 15:54 ` David Herrmann
2013-12-19 15:58 ` Ingo Molnar
2013-12-19 16:18 ` [PATCH v2] " David Herrmann
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).