All of lore.kernel.org
 help / color / mirror / Atom feed
From: Kees Cook <keescook@chromium.org>
To: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
Cc: Yoshinori Sato <ysato@users.sourceforge.jp>,
	kernel test robot <lkp@intel.com>, Rich Felker <dalias@libc.org>,
	Masahiro Yamada <masahiroy@kernel.org>,
	Nicolas Schier <n.schier@avm.de>,
	linux-sh@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-hardening@vger.kernel.org
Subject: Re: [PATCH] sh: Fix build with CONFIG_UBSAN=y
Date: Fri, 2 Feb 2024 02:32:34 -0800	[thread overview]
Message-ID: <202402020228.BBEF7DAC@keescook> (raw)
In-Reply-To: <fe057f57aba0f8a9040d4700d27f5bd478032925.camel@physik.fu-berlin.de>

On Wed, Jan 31, 2024 at 12:19:22PM +0100, John Paul Adrian Glaubitz wrote:
> Hi Kees,
> 
> On Wed, 2024-01-31 at 12:03 +0100, John Paul Adrian Glaubitz wrote:
> > Hi Kees,
> > 
> > On Tue, 2024-01-30 at 15:27 -0800, Kees Cook wrote:
> > > The early boot stub for sh had UBSan instrumentation present where it is
> > > not supported. Disable it for this part of the build.
> > > 
> > >   sh4-linux-ld: arch/sh/boot/compressed/misc.o: in function `zlib_inflate_table':
> > >   misc.c:(.text+0x670): undefined reference to `__ubsan_handle_shift_out_of_bounds'
> > > 
> > > Reported-by: kernel test robot <lkp@intel.com>
> > > Closes: https://lore.kernel.org/oe-kbuild-all/202401310416.s8HLiLnC-lkp@intel.com/
> > > Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
> > > Cc: Rich Felker <dalias@libc.org>
> > > Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
> > > Cc: Masahiro Yamada <masahiroy@kernel.org>
> > > Cc: Nicolas Schier <n.schier@avm.de>
> > > Cc: linux-sh@vger.kernel.org
> > > Signed-off-by: Kees Cook <keescook@chromium.org>
> > > ---
> > >  arch/sh/boot/compressed/Makefile | 1 +
> > >  1 file changed, 1 insertion(+)
> > > 
> > > diff --git a/arch/sh/boot/compressed/Makefile b/arch/sh/boot/compressed/Makefile
> > > index b5e29f99c02c..6c6c791a1d06 100644
> > > --- a/arch/sh/boot/compressed/Makefile
> > > +++ b/arch/sh/boot/compressed/Makefile
> > > @@ -12,6 +12,7 @@ targets := vmlinux vmlinux.bin vmlinux.bin.gz vmlinux.bin.bz2 \
> > >             vmlinux.bin.lzma vmlinux.bin.xz vmlinux.bin.lzo $(OBJECTS)
> > >  
> > >  GCOV_PROFILE := n
> > > +UBSAN_SANITIZE := n
> > >  
> > >  #
> > >  # IMAGE_OFFSET is the load offset of the compression loader
> > 
> > Thanks for the patch. I'm looking into this now and will provide the review later.
> 
> I tried to reproduce the error using your tree and the branch devel/overflow/ubsan-only
> minus the above patch and using the provided config but I'm unable to reproduce the
> error above.
> 
> Am I missing anything?

When I use GCC 13.2 (I'm specifically on Ubuntu 23.10) and the randconfig
linked from the report:
https://download.01.org/0day-ci/archive/20240131/202401310416.s8HLiLnC-lkp@intel.com/config
(which is notably enabling CONFIG_UBSAN=y and CONFIG_UBSAN_SHIFT=y) then I
see at the final link stage:

/usr/bin/sh4-linux-gnu-ld: arch/sh/boot/compressed/misc.o: in function `zlib_inflate_table':
misc.c:(.text+0x650): undefined reference to `__ubsan_handle_shift_out_of_bounds'
...

After the patch, it's solved.

-Kees

-- 
Kees Cook

  reply	other threads:[~2024-02-02 10:32 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-30 23:27 [PATCH] sh: Fix build with CONFIG_UBSAN=y Kees Cook
2024-01-31 11:03 ` John Paul Adrian Glaubitz
2024-01-31 11:19   ` John Paul Adrian Glaubitz
2024-02-02 10:32     ` Kees Cook [this message]
2024-02-02 11:06       ` John Paul Adrian Glaubitz
2024-02-11 10:39         ` John Paul Adrian Glaubitz
2024-02-12 18:26           ` Kees Cook
2024-02-12 18:45             ` John Paul Adrian Glaubitz
2024-02-14 12:52               ` John Paul Adrian Glaubitz
2024-03-01  5:46                 ` Liu, Yujie
2024-03-01 14:38                   ` John Paul Adrian Glaubitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202402020228.BBEF7DAC@keescook \
    --to=keescook@chromium.org \
    --cc=dalias@libc.org \
    --cc=glaubitz@physik.fu-berlin.de \
    --cc=linux-hardening@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-sh@vger.kernel.org \
    --cc=lkp@intel.com \
    --cc=masahiroy@kernel.org \
    --cc=n.schier@avm.de \
    --cc=ysato@users.sourceforge.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.