mbox series

[0/6] tools/nolibc: fix some undefined behaviour and enable UBSAN

Message ID 20250416-nolibc-ubsan-v1-0-c4704bb23da7@weissschuh.net
Headers show
Series tools/nolibc: fix some undefined behaviour and enable UBSAN | expand

Message

Thomas Weißschuh April 16, 2025, 6:40 p.m. UTC
Fix some issues uncovered by UBSAN and enable UBSAN for nolibc-test to
avoid regressions.

Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
---
Thomas Weißschuh (6):
      tools/nolibc: add __nolibc_has_feature()
      tools/nolibc: disable function sanitizer for _start_c()
      tools/nolibc: properly align dirent buffer
      tools/nolibc: fix integer overflow in i{64,}toa_r() and
      selftests/nolibc: disable ubsan for smash_stack()
      selftests/nolibc: enable UBSAN if available

 tools/include/nolibc/compiler.h              |  6 ++++++
 tools/include/nolibc/crt.h                   |  5 +++++
 tools/include/nolibc/dirent.h                |  1 +
 tools/include/nolibc/stdlib.h                | 24 ++++++++----------------
 tools/testing/selftests/nolibc/Makefile      |  3 ++-
 tools/testing/selftests/nolibc/nolibc-test.c |  1 +
 6 files changed, 23 insertions(+), 17 deletions(-)
---
base-commit: 7c73c10b906778384843b9d3ac6c2224727bbf5c
change-id: 20250416-nolibc-ubsan-028401698654

Best regards,

Comments

Thomas Weißschuh April 18, 2025, 9:20 p.m. UTC | #1
Hi Paul,

On 2025-04-18 10:32:27-0700, Paul E. McKenney wrote:
> On Wed, Apr 16, 2025 at 08:40:15PM +0200, Thomas Weißschuh wrote:
> > Fix some issues uncovered by UBSAN and enable UBSAN for nolibc-test to
> > avoid regressions.
> > 
> > Signed-off-by: Thomas Weißschuh <linux@weissschuh.net>
> 
> Thank you, Thomas!  Are these intended to go into the current v6.15
> release, or are you instead thinking in terms of the v6.16 merge window?
> Either works for me, but left to myself, I would assume the v6.16
> merge window.  ;-)

They are intended for v6.16 through the normal process.


Thomas

> 
> > ---
> > Thomas Weißschuh (6):
> >       tools/nolibc: add __nolibc_has_feature()
> >       tools/nolibc: disable function sanitizer for _start_c()
> >       tools/nolibc: properly align dirent buffer
> >       tools/nolibc: fix integer overflow in i{64,}toa_r() and
> >       selftests/nolibc: disable ubsan for smash_stack()
> >       selftests/nolibc: enable UBSAN if available
> > 
> >  tools/include/nolibc/compiler.h              |  6 ++++++
> >  tools/include/nolibc/crt.h                   |  5 +++++
> >  tools/include/nolibc/dirent.h                |  1 +
> >  tools/include/nolibc/stdlib.h                | 24 ++++++++----------------
> >  tools/testing/selftests/nolibc/Makefile      |  3 ++-
> >  tools/testing/selftests/nolibc/nolibc-test.c |  1 +
> >  6 files changed, 23 insertions(+), 17 deletions(-)
> > ---
> > base-commit: 7c73c10b906778384843b9d3ac6c2224727bbf5c
> > change-id: 20250416-nolibc-ubsan-028401698654
> > 
> > Best regards,
> > -- 
> > Thomas Weißschuh <linux@weissschuh.net>
> >