Re: [PATCH v2] powerpc: Use shared font data

2023-08-08 Thread Dr. David Alan Gilbert
* Randy Dunlap (rdun...@infradead.org) wrote:
> 
> 
> On 8/8/23 10:28, Dr. David Alan Gilbert wrote:
> > * Randy Dunlap (rdun...@infradead.org) wrote:
> >> Hi--
> >>
> >> On 8/6/23 18:07, li...@treblig.org wrote:
> >>> From: "Dr. David Alan Gilbert" 
> >>>
> >>> PowerPC has a 'btext' font used for the console which is almost identical
> >>> to the shared font_sun8x16, so use it rather than duplicating the data.
> >>>
> >>> They were actually identical until about a decade ago when
> >>>commit bcfbeecea11c ("drivers: console: font_: Change a glyph from
> >>> "broken bar" to "vertical line"")
> >>>
> >>> which changed the | in the shared font to be a solid
> >>> bar rather than a broken bar.  That's the only difference.
> >>>
> >>> This was originally spotted by PMD which noticed that sparc does
> >>> the same thing with the same data, and they also share a bunch
> >>> of functions to manipulate the data.  I've previously posted a near
> >>> identical patch for sparc.
> >>>
> >>> One difference I notice in PowerPC is that there are a bunch of compile
> >>> options for the .c files for the early code to avoid a bunch of security
> >>> compilation features;  it's not clear to me if this is a problem for
> >>> this font data.
> >>>
> >>> Tested very lightly with a boot without FS in qemu.
> >>>
> >>> v2
> >>>   Added 'select FONT_SUPPORT' (to stop modconfig causing the font to be
> >>>linked into a module rather than the main kernel)
> >>>   Added 'select FONTS' to satisfy requirements in lib/fonts
> >>>
> >>> Signed-off-by: Dr. David Alan Gilbert 
> >>> ---
> >>>  arch/powerpc/Kconfig.debug  |   3 +
> >>>  arch/powerpc/kernel/btext.c | 360 +---
> >>>  2 files changed, 9 insertions(+), 354 deletions(-)
> >>>
> >>> diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug
> >>> index 2a54fadbeaf51..521c4baf30e88 100644
> >>> --- a/arch/powerpc/Kconfig.debug
> >>> +++ b/arch/powerpc/Kconfig.debug
> >>> @@ -147,6 +147,9 @@ config BDI_SWITCH
> >>>  config BOOTX_TEXT
> >>>   bool "Support for early boot text console (BootX or OpenFirmware only)"
> >>>   depends on PPC_BOOK3S
> >>> + select FONT_SUN8x16
> >>> + select FONT_SUPPORT
> >>> + select FONTS
> >>>   help
> >>> Say Y here to see progress messages from the boot firmware in text
> >>> mode. Requires either BootX or Open Firmware.
> >>
> >> kconfig tells me:
> >>
> >> WARNING: unmet direct dependencies detected for FONTS
> >>   Depends on [n]: FONT_SUPPORT [=y] && (FRAMEBUFFER_CONSOLE [=n] || 
> >> STI_CONSOLE [=n])
> >>   Selected by [y]:
> >>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
> >>
> >> WARNING: unmet direct dependencies detected for FONT_SUN8x16
> >>   Depends on [n]: FONT_SUPPORT [=y] && FRAMEBUFFER_CONSOLE [=n] && (!SPARC 
> >> && FONTS [=y] || SPARC)
> >>   Selected by [y]:
> >>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
> >>
> >> because FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE and neither of 
> >> those is set.
> > 
> > I'm not getting the warnings in the v2, with a few configs; what command
> > are using?
> > 
> 
> My 'make' build target is either pp32_randconfig or ppc64_randconfig.
> I see kconfig warnings in > 50% of the randconfigs. (small sample size,
> around 20)

Thanks, that triggers it for me; I'll have a discussion with it

Dave

> 
> > I'm tempted to change the FONT_SUN8x16 dependency line to have
> > SPARC||BOOTX_TEXT or SPARC||POWERPC  and drop the 'select FONTS' I
> > added.
> > 
> > Dave
> > 
> >>
> >> -- 
> >> ~Randy
> 
> -- 
> ~Randy
-- 
 -Open up your eyes, open up your mind, open up your code ---   
/ Dr. David Alan Gilbert|   Running GNU/Linux   | Happy  \ 
\dave @ treblig.org |   | In Hex /
 \ _|_ http://www.treblig.org   |___/


Re: [PATCH v2] powerpc: Use shared font data

2023-08-08 Thread Randy Dunlap



On 8/8/23 10:28, Dr. David Alan Gilbert wrote:
> * Randy Dunlap (rdun...@infradead.org) wrote:
>> Hi--
>>
>> On 8/6/23 18:07, li...@treblig.org wrote:
>>> From: "Dr. David Alan Gilbert" 
>>>
>>> PowerPC has a 'btext' font used for the console which is almost identical
>>> to the shared font_sun8x16, so use it rather than duplicating the data.
>>>
>>> They were actually identical until about a decade ago when
>>>commit bcfbeecea11c ("drivers: console: font_: Change a glyph from
>>> "broken bar" to "vertical line"")
>>>
>>> which changed the | in the shared font to be a solid
>>> bar rather than a broken bar.  That's the only difference.
>>>
>>> This was originally spotted by PMD which noticed that sparc does
>>> the same thing with the same data, and they also share a bunch
>>> of functions to manipulate the data.  I've previously posted a near
>>> identical patch for sparc.
>>>
>>> One difference I notice in PowerPC is that there are a bunch of compile
>>> options for the .c files for the early code to avoid a bunch of security
>>> compilation features;  it's not clear to me if this is a problem for
>>> this font data.
>>>
>>> Tested very lightly with a boot without FS in qemu.
>>>
>>> v2
>>>   Added 'select FONT_SUPPORT' (to stop modconfig causing the font to be
>>>linked into a module rather than the main kernel)
>>>   Added 'select FONTS' to satisfy requirements in lib/fonts
>>>
>>> Signed-off-by: Dr. David Alan Gilbert 
>>> ---
>>>  arch/powerpc/Kconfig.debug  |   3 +
>>>  arch/powerpc/kernel/btext.c | 360 +---
>>>  2 files changed, 9 insertions(+), 354 deletions(-)
>>>
>>> diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug
>>> index 2a54fadbeaf51..521c4baf30e88 100644
>>> --- a/arch/powerpc/Kconfig.debug
>>> +++ b/arch/powerpc/Kconfig.debug
>>> @@ -147,6 +147,9 @@ config BDI_SWITCH
>>>  config BOOTX_TEXT
>>> bool "Support for early boot text console (BootX or OpenFirmware only)"
>>> depends on PPC_BOOK3S
>>> +   select FONT_SUN8x16
>>> +   select FONT_SUPPORT
>>> +   select FONTS
>>> help
>>>   Say Y here to see progress messages from the boot firmware in text
>>>   mode. Requires either BootX or Open Firmware.
>>
>> kconfig tells me:
>>
>> WARNING: unmet direct dependencies detected for FONTS
>>   Depends on [n]: FONT_SUPPORT [=y] && (FRAMEBUFFER_CONSOLE [=n] || 
>> STI_CONSOLE [=n])
>>   Selected by [y]:
>>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
>>
>> WARNING: unmet direct dependencies detected for FONT_SUN8x16
>>   Depends on [n]: FONT_SUPPORT [=y] && FRAMEBUFFER_CONSOLE [=n] && (!SPARC 
>> && FONTS [=y] || SPARC)
>>   Selected by [y]:
>>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
>>
>> because FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE and neither of 
>> those is set.
> 
> I'm not getting the warnings in the v2, with a few configs; what command
> are using?
> 

My 'make' build target is either pp32_randconfig or ppc64_randconfig.
I see kconfig warnings in > 50% of the randconfigs. (small sample size,
around 20)


> I'm tempted to change the FONT_SUN8x16 dependency line to have
> SPARC||BOOTX_TEXT or SPARC||POWERPC  and drop the 'select FONTS' I
> added.
> 
> Dave
> 
>>
>> -- 
>> ~Randy

-- 
~Randy


Re: [PATCH v2] powerpc: Use shared font data

2023-08-08 Thread Dr. David Alan Gilbert
* Randy Dunlap (rdun...@infradead.org) wrote:
> Hi--
> 
> On 8/6/23 18:07, li...@treblig.org wrote:
> > From: "Dr. David Alan Gilbert" 
> > 
> > PowerPC has a 'btext' font used for the console which is almost identical
> > to the shared font_sun8x16, so use it rather than duplicating the data.
> > 
> > They were actually identical until about a decade ago when
> >commit bcfbeecea11c ("drivers: console: font_: Change a glyph from
> > "broken bar" to "vertical line"")
> > 
> > which changed the | in the shared font to be a solid
> > bar rather than a broken bar.  That's the only difference.
> > 
> > This was originally spotted by PMD which noticed that sparc does
> > the same thing with the same data, and they also share a bunch
> > of functions to manipulate the data.  I've previously posted a near
> > identical patch for sparc.
> > 
> > One difference I notice in PowerPC is that there are a bunch of compile
> > options for the .c files for the early code to avoid a bunch of security
> > compilation features;  it's not clear to me if this is a problem for
> > this font data.
> > 
> > Tested very lightly with a boot without FS in qemu.
> > 
> > v2
> >   Added 'select FONT_SUPPORT' (to stop modconfig causing the font to be
> >linked into a module rather than the main kernel)
> >   Added 'select FONTS' to satisfy requirements in lib/fonts
> > 
> > Signed-off-by: Dr. David Alan Gilbert 
> > ---
> >  arch/powerpc/Kconfig.debug  |   3 +
> >  arch/powerpc/kernel/btext.c | 360 +---
> >  2 files changed, 9 insertions(+), 354 deletions(-)
> > 
> > diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug
> > index 2a54fadbeaf51..521c4baf30e88 100644
> > --- a/arch/powerpc/Kconfig.debug
> > +++ b/arch/powerpc/Kconfig.debug
> > @@ -147,6 +147,9 @@ config BDI_SWITCH
> >  config BOOTX_TEXT
> > bool "Support for early boot text console (BootX or OpenFirmware only)"
> > depends on PPC_BOOK3S
> > +   select FONT_SUN8x16
> > +   select FONT_SUPPORT
> > +   select FONTS
> > help
> >   Say Y here to see progress messages from the boot firmware in text
> >   mode. Requires either BootX or Open Firmware.
> 
> kconfig tells me:
> 
> WARNING: unmet direct dependencies detected for FONTS
>   Depends on [n]: FONT_SUPPORT [=y] && (FRAMEBUFFER_CONSOLE [=n] || 
> STI_CONSOLE [=n])
>   Selected by [y]:
>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
> 
> WARNING: unmet direct dependencies detected for FONT_SUN8x16
>   Depends on [n]: FONT_SUPPORT [=y] && FRAMEBUFFER_CONSOLE [=n] && (!SPARC && 
> FONTS [=y] || SPARC)
>   Selected by [y]:
>   - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]
> 
> because FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE and neither of 
> those is set.

I'm not getting the warnings in the v2, with a few configs; what command
are using?

I'm tempted to change the FONT_SUN8x16 dependency line to have
SPARC||BOOTX_TEXT or SPARC||POWERPC  and drop the 'select FONTS' I
added.

Dave

> 
> -- 
> ~Randy
-- 
 -Open up your eyes, open up your mind, open up your code ---   
/ Dr. David Alan Gilbert|   Running GNU/Linux   | Happy  \ 
\dave @ treblig.org |   | In Hex /
 \ _|_ http://www.treblig.org   |___/


Re: [PATCH v2] powerpc: Use shared font data

2023-08-08 Thread Randy Dunlap
Hi--

On 8/6/23 18:07, li...@treblig.org wrote:
> From: "Dr. David Alan Gilbert" 
> 
> PowerPC has a 'btext' font used for the console which is almost identical
> to the shared font_sun8x16, so use it rather than duplicating the data.
> 
> They were actually identical until about a decade ago when
>commit bcfbeecea11c ("drivers: console: font_: Change a glyph from
> "broken bar" to "vertical line"")
> 
> which changed the | in the shared font to be a solid
> bar rather than a broken bar.  That's the only difference.
> 
> This was originally spotted by PMD which noticed that sparc does
> the same thing with the same data, and they also share a bunch
> of functions to manipulate the data.  I've previously posted a near
> identical patch for sparc.
> 
> One difference I notice in PowerPC is that there are a bunch of compile
> options for the .c files for the early code to avoid a bunch of security
> compilation features;  it's not clear to me if this is a problem for
> this font data.
> 
> Tested very lightly with a boot without FS in qemu.
> 
> v2
>   Added 'select FONT_SUPPORT' (to stop modconfig causing the font to be
>linked into a module rather than the main kernel)
>   Added 'select FONTS' to satisfy requirements in lib/fonts
> 
> Signed-off-by: Dr. David Alan Gilbert 
> ---
>  arch/powerpc/Kconfig.debug  |   3 +
>  arch/powerpc/kernel/btext.c | 360 +---
>  2 files changed, 9 insertions(+), 354 deletions(-)
> 
> diff --git a/arch/powerpc/Kconfig.debug b/arch/powerpc/Kconfig.debug
> index 2a54fadbeaf51..521c4baf30e88 100644
> --- a/arch/powerpc/Kconfig.debug
> +++ b/arch/powerpc/Kconfig.debug
> @@ -147,6 +147,9 @@ config BDI_SWITCH
>  config BOOTX_TEXT
>   bool "Support for early boot text console (BootX or OpenFirmware only)"
>   depends on PPC_BOOK3S
> + select FONT_SUN8x16
> + select FONT_SUPPORT
> + select FONTS
>   help
> Say Y here to see progress messages from the boot firmware in text
> mode. Requires either BootX or Open Firmware.

kconfig tells me:

WARNING: unmet direct dependencies detected for FONTS
  Depends on [n]: FONT_SUPPORT [=y] && (FRAMEBUFFER_CONSOLE [=n] || STI_CONSOLE 
[=n])
  Selected by [y]:
  - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]

WARNING: unmet direct dependencies detected for FONT_SUN8x16
  Depends on [n]: FONT_SUPPORT [=y] && FRAMEBUFFER_CONSOLE [=n] && (!SPARC && 
FONTS [=y] || SPARC)
  Selected by [y]:
  - BOOTX_TEXT [=y] && PPC_BOOK3S [=y]

because FONTS depends on FRAMEBUFFER_CONSOLE || STI_CONSOLE and neither of 
those is set.


-- 
~Randy