I will test this with ASan and report back! On 16.05.2020 16:15, Christos Zoulas wrote: > That is a completely different issue here. There are no linker tricks. > We want the module loader to include all the symbols any module > can require, this is why we load all the libraries. > > While it is questionable if nofifofs is part of the base system or not, > this is the way it was before. Anyway it is easy enough to have it > both ways. If we ever grow a test that needs the real fifo stuff in > an autoloaded module, we can deal with that then. > > christos > >> On May 16, 2020, at 9:46 AM, Kamil Rytarowski <n54%gmx.com@localhost> wrote: >> >> Signed PGP part >> On 16.05.2020 14:54, Christos Zoulas wrote: >>> Module Name: src >>> Committed By: christos >>> Date: Sat May 16 12:54:27 UTC 2020 >>> >>> Modified Files: >>> src/tests/rump/modautoload: Makefile >>> >>> Log Message: >>> Do the same thing with linker flags instead of directly specifying the archives. >>> >>> >> >> Is there chance to rename the fifo symbols instead of using linker tricks? >> >> I'm also not entirely sure that this will be compatible with sanitizers >> (and C++ with the ODR rule) at this point. >> >>> To generate a diff of this commit: >>> cvs rdiff -u -r1.10 -r1.11 src/tests/rump/modautoload/Makefile >>> >>> Please note that diffs are not public domain; they are subject to the >>> copyright notices on the relevant files. >>> >>> >>> Modified files: >>> >>> Index: src/tests/rump/modautoload/Makefile >>> diff -u src/tests/rump/modautoload/Makefile:1.10 src/tests/rump/modautoload/Makefile:1.11 >>> --- src/tests/rump/modautoload/Makefile:1.10 Sat May 16 08:44:42 2020 >>> +++ src/tests/rump/modautoload/Makefile Sat May 16 08:54:27 2020 >>> @@ -1,4 +1,4 @@ >>> -# $NetBSD: Makefile,v 1.10 2020/05/16 12:44:42 christos Exp $ >>> +# $NetBSD: Makefile,v 1.11 2020/05/16 12:54:27 christos Exp $ >>> # >>> >>> .include <bsd.init.mk> >>> @@ -15,11 +15,9 @@ SRCS.t_modautoload+= t_modautoload.c >>> # subdirectory -- otherwise the LDADD lines would get a little hairy. >>> LDFLAGS+= -Wl,-E >>> LDADD+= \ >>> - -Wl,--whole-archive \ >>> - ${DESTDIR}/usr/lib/librumpvfs_nofifofs.a \ >>> - ${DESTDIR}/usr/lib/librumpvfs.a \ >>> - ${DESTDIR}/usr/lib/librump.a \ >>> - -Wl,--no-whole-archive >>> + -Wl,--whole-archive -Wl,-Bstatic \ >>> + -lrumpvfs_nofifofs -lrumpvfs -lrump \ >>> + -Wl,-Bdynamic -Wl,--no-whole-archive >>> >>> LDADD+= -lrumpuser -lpthread >>> DPADD+= ${LIBRUMPVFS} ${LIBRUMP} ${LIBRUMPUSER} >>> >> >> >> >> <sanitizer.log> >
Attachment:
signature.asc
Description: OpenPGP digital signature