lib/vsprintf.c: remove unused ip6_addr_string()
authorRasmus Villemoes <rasmus.villemoes@prevas.dk>
Thu, 27 May 2021 22:20:46 +0000 (00:20 +0200)
committerTom Rini <trini@konsulko.com>
Thu, 15 Jul 2021 22:44:36 +0000 (18:44 -0400)
There's currently no user of %p[iI]6, so including ip6_addr_string()
in the image is a waste of bytes. It's easy enough to have the
compiler elide it without removing the code completely.

The closest I can find to anybody "handling" ipv6 in U-Boot currently
is in efi_net.c which does

        if (ipv6) {
                ret = EFI_UNSUPPORTED;

As indicated in the comment, it can easily be put back, but preferably
under a config knob.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
lib/vsprintf.c

index af0a6e1..c14176d 100644 (file)
@@ -434,6 +434,9 @@ static char *uuid_string(char *buf, char *end, u8 *addr, int field_width,
  * - 'i' [46] for 'raw' IPv4/IPv6 addresses, IPv6 omits the colons, IPv4 is
  *       currently the same
  *
+ * Note: IPv6 support is currently if(0)'ed out. If you ever need
+ * %pI6, please add an IPV6 Kconfig knob, make your code select or
+ * depend on that, and change the 0 below to CONFIG_IS_ENABLED(IPV6).
  */
 static char *pointer(const char *fmt, char *buf, char *end, void *ptr,
                int field_width, int precision, int flags)
@@ -478,7 +481,8 @@ static char *pointer(const char *fmt, char *buf, char *end, void *ptr,
                flags |= SPECIAL;
                /* Fallthrough */
        case 'I':
-               if (fmt[1] == '6')
+               /* %pI6 currently unused */
+               if (0 && fmt[1] == '6')
                        return ip6_addr_string(buf, end, ptr, field_width,
                                               precision, flags);
                if (fmt[1] == '4')