[Rd] Repeated segfault at installing sysdata.rda with clang/san build

Dirk Eddelbuettel edd @end|ng |rom deb|@n@org
Sun Dec 18 20:41:01 CET 2022


I have maintained two SAN/UBSAN builds (one gcc, one clang) for many years
(even though I also happily use Winston's newer/bigger container and
generally recommend its use) and still have GitHub actions build them on a
weekly schedule (as they follow r-devel).

The clang one started to fail a little while ago. I just tried it locally,
and it too blew up in the same spot:


[...]
make[4]: Entering directory '/tmp/R-devel/src/library/tools'
installing 'sysdata.rda'

 *** caught segfault ***
address (nil), cause 'memory not mapped'

Traceback:
 1: load(srcFile, e)
 2: tools:::sysdata2LazyLoadDB("./R/sysdata.rda", "../../../library/tools/R")
An irrecoverable exception occurred. R is aborting now ...
/bin/bash: line 2: 10795 Done                    echo "tools:::sysdata2LazyLoadDB(\"./R/sysdata.rda\",\"../../../library/tools/R\")"
     10796 Segmentation fault      (core dumped) | R_DEFAULT_PACKAGES=NULL LC_ALL=C R_ENABLE_JIT=0 TZ=UTC ../../../bin/R --vanilla --no-echo
make[4]: Leaving directory '/tmp/R-devel/src/library/tools'
make[4]: *** [../../../share/make/basepkg.mk:151: sysdata] Error 139
make[3]: *** [Makefile:36: all] Error 2
make[3]: Leaving directory '/tmp/R-devel/src/library/tools'
make[2]: Leaving directory '/tmp/R-devel/src/library'
make[2]: *** [Makefile:37: R] Error 1
make[1]: *** [Makefile:28: R] Error 1
make[1]: Leaving directory '/tmp/R-devel/src'
make: *** [Makefile:61: R] Error 1


I assume it shouldn't. But I am also not too familiar with internals of
sysdata and the lazyload format.  The Dockerfile is in the repository at

  https://github.com/rocker-org/r-devel-san-clang

in case someone else wants to take stab. I may try this on my Ubuntu machine
too in temporary directory.

Dirk

-- 
dirk.eddelbuettel.com | @eddelbuettel | edd using debian.org



More information about the R-devel mailing list