[U-Boot] [PATCH 0/5] vsprintf and short-wchar for EFI_LOADER

Tom Rini trini at konsulko.com
Wed Sep 6 18:16:48 UTC 2017


On Wed, Sep 06, 2017 at 02:14:21PM -0400, Rob Clark wrote:
> On Wed, Sep 6, 2017 at 12:45 PM, Tom Rini <trini at konsulko.com> wrote:
> > On Wed, Sep 06, 2017 at 05:31:52PM +0200, Heinrich Schuchardt wrote:
> >> On 08/10/2017 01:14 AM, Rob Clark wrote:
> >> > As requested, I've split this out of the larger EFI_LOADER patchset.
> >> >
> >> > This adds two things that the later EFI_LOADER patchset depends on:
> >> >
> >> > 1) UUID/GUID support
> >> > 2) %ls UTF string support, in particular UTF-16.  In the UEFI API,
> >> >    all strings are UTF-16
> >> >
> >> > I had started converting this over to using c11 + u"string" literals,
> >> > instead of using -fshort-wchar + L"string" literals and %ls, but I
> >> > ran into two problems:
> >> >
> >> > 1) we lose out on the printf (and friends) va_arg type checking if we
> >> >    roll our own custom printf fmt modifier for UTF-16 strings
> >> > 2) and worse than that, we have to disable -Wformat warnings
> >> >
> >> > So given that we have a significant downside for not just using
> >> > -fshort-wchar, and I don't think any really strong argument against,
> >> > I am back to thinking that we should just go with -fshort-wchar.
> >> >
> >> > The current patchset has a Kconfig option to opt-in to -fshort-wchar,
> >> > which EFI_LOADER selects.  If the consensus is to enable -fshort-wchar
> >> > for everything, I'll drop the kconfig part and make it unconditional.
> >> >
> >> > The current version of this patchset and efi-loader patchset are at
> >> >
> >> >   https://github.com/robclark/u-boot.git  vsprintf
> >> >
> >> > and
> >> >
> >> >   https://github.com/robclark/u-boot.git enough-uefi-for-shim-2
> >> >
> >> > I'll resend the enought-uefi-for-shim-2 patchset after I have a
> >> > chance to figure out fs-test.sh and add tests for fs_readdir().
> >> >
> >> > Rob Clark (5):
> >> >   Kconfig: add option to build with -fshort-wchar
> >> >   lib: add some utf16 handling helpers
> >> >   vsprintf.c: add UTF-16 string (%ls) support
> >> >   vsprintf.c: add GUID printing
> >> >   examples: add fallback memcpy
> >> >
> >> >  Kconfig                      |  8 +++++
> >> >  Makefile                     |  4 +++
> >> >  examples/api/Makefile        |  2 ++
> >> >  examples/api/glue.c          | 12 +++++++
> >> >  include/charset.h            | 55 ++++++++++++++++++++++++++++++
> >> >  include/config_fallbacks.h   |  1 +
> >> >  lib/Makefile                 |  1 +
> >> >  lib/charset.c                | 81 ++++++++++++++++++++++++++++++++++++++++++++
> >> >  lib/efi_loader/Kconfig       |  1 +
> >> >  lib/efi_loader/efi_console.c | 17 ++--------
> >> >  lib/vsprintf.c               | 77 ++++++++++++++++++++++++++++++++++++++---
> >> >  11 files changed, 241 insertions(+), 18 deletions(-)
> >> >  create mode 100644 include/charset.h
> >> >  create mode 100644 lib/charset.c
> >> >
> >>
> >> Hello Tom,
> >>
> >> what is happening with this patch series?
> >>
> >> [U-Boot,5/5] examples: add fallback memcpy
> >> https://patchwork.ozlabs.org/patch/800030/
> >> [U-Boot,4/5] vsprintf.c: add GUID printing
> >> https://patchwork.ozlabs.org/patch/800029/
> >> [U-Boot,3/5] vsprintf.c: add UTF-16 string (%ls) support
> >> https://patchwork.ozlabs.org/patch/800027/
> >> [U-Boot,2/5] lib: add some utf16 handling helpers
> >> https://patchwork.ozlabs.org/patch/800028/
> >> [U-Boot,1/5] Kconfig: add option to build with -fshort-wchar
> >> https://patchwork.ozlabs.org/patch/800026/
> >>
> >> Was it too late for 2017.09 and will be merged with 2017.11?
> >
> > I replied to the first patch saying that we should always -fshort-wchar
> > and enforce stdc-2011 as the default.  That would be good to open
> > 2017.11 with as well.  Thanks!
> >
> 
> Oh, I guess I should resend that.  Probably c11 should be a different
> patch (although I am in favour of switching)..
> 
> When does the merge window open for 2017.11?  It would be good to land
> this and the fs/fat patches early so we could start merging the pile
> of efi_loader patches that depend on these.

v2017.09 will be released on the 11th, if things are going well,
sometime more morning than not, eastern time.  Then I'll start grabbing
stuff and testing.  If you would like to suggest orders of things to
pull in, pointers to bundles in patchwork would be great.  Otherwise
I'll be assembling them myself as always.  Thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 819 bytes
Desc: Digital signature
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20170906/09ec51b4/attachment.sig>


More information about the U-Boot mailing list