Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Shadow memory range error with RDsan #26

Open
billdenney opened this issue Feb 11, 2022 · 5 comments
Open

Shadow memory range error with RDsan #26

billdenney opened this issue Feb 11, 2022 · 5 comments

Comments

@billdenney
Copy link

This may be related to #24 or #15 . This is the same issue as also reported in coatless-rpkg/sitmo#14

I'm trying to test a different package with RDsan, and I get the following error. Unfortunately, I don't know enough about the C side of things to provide much more information.

To replicate it, I put the following into a Dockerfile and ran docker build -t sitmo-rdsan ..

Dockerfile:

# To build:
#  docker build -t sitmo-rdsan .

FROM wch1/r-debug

ENV PKGDEPS="pak::pkg_install('sitmo')"

RUN RDsan -q -e "${PKGDEPS}"

Error:

 ---> Running in f3da8c62b242
> pak::pkg_install('sitmo')
ℹ Loading metadata database
✔ Loading metadata database ... done


→ Will install 1 package.
→ Will download 1 CRAN package (132.96 kB).
+ sitmo   2.0.2 [bld][cmp][dl] (132.96 kB)
ℹ Getting 1 pkg (132.96 kB)
✔ Got sitmo 2.0.2 (source) (132.96 kB)
ℹ Building sitmo 2.0.2
✖ Failed to build sitmo 2.0.2

Error: <callr_remote_error: Failed to build source package 'sitmo'>
 in process 23
-->
Failed to build source package 'sitmo', stdout + stderr:

OE> * installing *source* package ‘sitmo’ ...
OE> ** package ‘sitmo’ successfully unpacked and MD5 sums checked
OE> staged installation is only possible with locking
OE> ** using non-staged installation
OE> ** libs
OE> g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++14 -I"/usr/local/RDsan/lib/R/include" -DNDEBUG -I../inst/include/ -I'/usr/local/RDsan/lib/R/site-library/Rcpp/include' -I/usr/local/include -DSWITCH_TO_REFCNT  -fpic  -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O0 -Wall -Wall -pedantic  -Wall -pedantic -c RcppExports.cpp -o RcppExports.o
OE> g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++14 -I"/usr/local/RDsan/lib/R/include" -DNDEBUG -I../inst/include/ -I'/usr/local/RDsan/lib/R/site-library/Rcpp/include' -I/usr/local/include -DSWITCH_TO_REFCNT  -fpic  -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O0 -Wall -Wall -pedantic  -Wall -pedantic -c sitmo_demo.cpp -o sitmo_demo.o
OE> g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++14 -I"/usr/local/RDsan/lib/R/include" -DNDEBUG -I../inst/include/ -I'/usr/local/RDsan/lib/R/site-library/Rcpp/include' -I/usr/local/include -DSWITCH_TO_REFCNT  -fpic  -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O0 -Wall -Wall -pedantic  -Wall -pedantic -c sitmo_parallel.cpp -o sitmo_parallel.o
OE> g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++14 -I"/usr/local/RDsan/lib/R/include" -DNDEBUG -I../inst/include/ -I'/usr/local/RDsan/lib/R/site-library/Rcpp/include' -I/usr/local/include -DSWITCH_TO_REFCNT  -fpic  -fstack-protector-strong -Wformat -Werror=format-security -Wdate-time -D_FORTIFY_SOURCE=2 -g -O0 -Wall -Wall -pedantic  -Wall -pedantic -c sitmo_runif.cpp -o sitmo_runif.o
OE> sitmo_parallel.cpp: In function ‘Rcpp::NumericVector sitmo_parallel(unsigned int, Rcpp::NumericVector&)’:
OE> sitmo_parallel.cpp:37:16: warning: unused variable ‘ncores’ [-Wunused-variable]
OE>    37 |   unsigned int ncores = seeds.size();
OE>       |                ^~~~~~
OE> g++ -fsanitize=address,undefined,bounds-strict -fno-omit-frame-pointer -std=gnu++14 -shared -L/usr/local/RDsan/lib/R/lib -L/usr/local/lib -o sitmo.so RcppExports.o sitmo_demo.o sitmo_parallel.o sitmo_runif.o -L/usr/local/RDsan/lib/R/lib -lRlapack -L/usr/local/RDsan/lib/R/lib -lRblas -L/usr/lib/gcc/x86_64-linux-gnu/9 -lgfortran -lm -lquadmath -L/usr/local/RDsan/lib/R/lib -lR
OE> installing to /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs
OE> ** R
OE> ** inst
OE> ** byte-compile and prepare package for lazy loading
OE> ** help
OE> *** installing help indices
OE> ** building package indices
OE> ** installing vignettes
OE> ** testing if installed package can be loaded
OE> ==101==Shadow memory range interleaves with an existing memory mapping. ASan cannot proceed correctly. ABORTING.
OE> ==101==ASan shadow was supposed to be located in the [0x00007fff7000-0x10007fff7fff] range.
OE> ==101==This might be related to ELF_ET_DYN_BASE change in Linux 4.12.
OE> ==101==See https://github.com/google/sanitizers/issues/856 for possible workarounds.
OE> ==101==Process memory map follows:
OE>     0x00007fff7000-0x00008fff7000
OE>     0x00008fff7000-0x02008fff7000
OE>     0x02008fff7000-0x10007fff8000
OE>     0x5612db615000-0x5612db616000   /usr/local/RDsan/lib/R/bin/exec/R
OE>     0x5612db616000-0x5612db617000   /usr/local/RDsan/lib/R/bin/exec/R
OE>     0x5612db617000-0x5612db618000   /usr/local/RDsan/lib/R/bin/exec/R
OE>     0x5612db618000-0x5612db619000   /usr/local/RDsan/lib/R/bin/exec/R
OE>     0x5612db619000-0x5612db61a000   /usr/local/RDsan/lib/R/bin/exec/R
OE>     0x600000000000-0x602000000000
OE>     0x602000000000-0x602000020000
OE>     0x602000020000-0x602e00000000
OE>     0x602e00000000-0x602e00010000
OE>     0x602e00010000-0x603000000000
OE>     0x603000000000-0x603000020000
OE>     0x603000020000-0x603e00000000
OE>     0x603e00000000-0x603e00010000
OE>     0x603e00010000-0x604000000000
OE>     0x604000000000-0x604000010000
OE>     0x604000010000-0x604e00000000
OE>     0x604e00000000-0x604e00010000
OE>     0x604e00010000-0x606000000000
OE>     0x606000000000-0x606000010000
OE>     0x606000010000-0x606e00000000
OE>     0x606e00000000-0x606e00010000
OE>     0x606e00010000-0x607000000000
OE>     0x607000000000-0x607000010000
OE>     0x607000010000-0x607e00000000
OE>     0x607e00000000-0x607e00010000
OE>     0x607e00010000-0x608000000000
OE>     0x608000000000-0x608000010000
OE>     0x608000010000-0x608e00000000
OE>     0x608e00000000-0x608e00010000
OE>     0x608e00010000-0x60b000000000
OE>     0x60b000000000-0x60b000010000
OE>     0x60b000010000-0x60be00000000
OE>     0x60be00000000-0x60be00010000
OE>     0x60be00010000-0x60c000000000
OE>     0x60c000000000-0x60c000010000
OE>     0x60c000010000-0x60ce00000000
OE>     0x60ce00000000-0x60ce00010000
OE>     0x60ce00010000-0x60d000000000
OE>     0x60d000000000-0x60d000010000
OE>     0x60d000010000-0x60de00000000
OE>     0x60de00000000-0x60de00010000
OE>     0x60de00010000-0x60e000000000
OE>     0x60e000000000-0x60e000010000
OE>     0x60e000010000-0x60ee00000000
OE>     0x60ee00000000-0x60ee00010000
OE>     0x60ee00010000-0x60f000000000
OE>     0x60f000000000-0x60f000010000
OE>     0x60f000010000-0x60fe00000000
OE>     0x60fe00000000-0x60fe00010000
OE>     0x60fe00010000-0x610000000000
OE>     0x610000000000-0x610000030000
OE>     0x610000030000-0x610e00000000
OE>     0x610e00000000-0x610e00010000
OE>     0x610e00010000-0x611000000000
OE>     0x611000000000-0x6110000a0000
OE>     0x6110000a0000-0x611e00000000
OE>     0x611e00000000-0x611e00010000
OE>     0x611e00010000-0x612000000000
OE>     0x612000000000-0x612000150000
OE>     0x612000150000-0x612e00000000
OE>     0x612e00000000-0x612e00010000
OE>     0x612e00010000-0x613000000000
OE>     0x613000000000-0x613000070000
OE>     0x613000070000-0x613e00000000
OE>     0x613e00000000-0x613e00010000
OE>     0x613e00010000-0x614000000000
OE>     0x614000000000-0x614000190000
OE>     0x614000190000-0x614e00000000
OE>     0x614e00000000-0x614e00010000
OE>     0x614e00010000-0x615000000000
OE>     0x615000000000-0x615000060000
OE>     0x615000060000-0x615e00000000
OE>     0x615e00000000-0x615e00010000
OE>     0x615e00010000-0x616000000000
OE>     0x616000000000-0x6160000b0000
OE>     0x6160000b0000-0x616e00000000
OE>     0x616e00000000-0x616e00010000
OE>     0x616e00010000-0x617000000000
OE>     0x617000000000-0x617000050000
OE>     0x617000050000-0x617e00000000
OE>     0x617e00000000-0x617e00010000
OE>     0x617e00010000-0x618000000000
OE>     0x618000000000-0x618000060000
OE>     0x618000060000-0x618e00000000
OE>     0x618e00000000-0x618e00010000
OE>     0x618e00010000-0x619000000000
OE>     0x619000000000-0x6190002d0000
OE>     0x6190002d0000-0x619e00000000
OE>     0x619e00000000-0x619e00010000
OE>     0x619e00010000-0x61a000000000
OE>     0x61a000000000-0x61a0000b0000
OE>     0x61a0000b0000-0x61ae00000000
OE>     0x61ae00000000-0x61ae00010000
OE>     0x61ae00010000-0x61b000000000
OE>     0x61b000000000-0x61b0000b0000
OE>     0x61b0000b0000-0x61be00000000
OE>     0x61be00000000-0x61be00010000
OE>     0x61be00010000-0x61c000000000
OE>     0x61c000000000-0x61c000090000
OE>     0x61c000090000-0x61ce00000000
OE>     0x61ce00000000-0x61ce00010000
OE>     0x61ce00010000-0x61d000000000
OE>     0x61d000000000-0x61d000090000
OE>     0x61d000090000-0x61de00000000
OE>     0x61de00000000-0x61de00010000
OE>     0x61de00010000-0x61e000000000
OE>     0x61e000000000-0x61e000050000
OE>     0x61e000050000-0x61ee00000000
OE>     0x61ee00000000-0x61ee00010000
OE>     0x61ee00010000-0x61f000000000
OE>     0x61f000000000-0x61f0000d0000
OE>     0x61f0000d0000-0x61fe00000000
OE>     0x61fe00000000-0x61fe00010000
OE>     0x61fe00010000-0x620000000000
OE>     0x620000000000-0x620000040000
OE>     0x620000040000-0x620e00000000
OE>     0x620e00000000-0x620e00010000
OE>     0x620e00010000-0x621000000000
OE>     0x621000000000-0x621000210000
OE>     0x621000210000-0x621e00000000
OE>     0x621e00000000-0x621e00010000
OE>     0x621e00010000-0x622000000000
OE>     0x622000000000-0x622000080000
OE>     0x622000080000-0x622e00000000
OE>     0x622e00000000-0x622e00010000
OE>     0x622e00010000-0x623000000000
OE>     0x623000000000-0x6230000d0000
OE>     0x6230000d0000-0x623e00000000
OE>     0x623e00000000-0x623e00010000
OE>     0x623e00010000-0x624000000000
OE>     0x624000000000-0x6240009c0000
OE>     0x6240009c0000-0x624e00000000
OE>     0x624e00000000-0x624e00010000
OE>     0x624e00010000-0x625000000000
OE>     0x625000000000-0x6250033b0000
OE>     0x6250033b0000-0x625e00000000
OE>     0x625e00000000-0x625e00010000
OE>     0x625e00010000-0x626000000000
OE>     0x626000000000-0x6260000a0000
OE>     0x6260000a0000-0x626e00000000
OE>     0x626e00000000-0x626e00010000
OE>     0x626e00010000-0x627000000000
OE>     0x627000000000-0x627000070000
OE>     0x627000070000-0x627e00000000
OE>     0x627e00000000-0x627e00010000
OE>     0x627e00010000-0x628000000000
OE>     0x628000000000-0x628000050000
OE>     0x628000050000-0x628e00000000
OE>     0x628e00000000-0x628e00010000
OE>     0x628e00010000-0x629000000000
OE>     0x629000000000-0x6290001a0000
OE>     0x6290001a0000-0x629e00000000
OE>     0x629e00000000-0x629e00010000
OE>     0x629e00010000-0x62a000000000
OE>     0x62a000000000-0x62a000080000
OE>     0x62a000080000-0x62ae00000000
OE>     0x62ae00000000-0x62ae00010000
OE>     0x62ae00010000-0x62b000000000
OE>     0x62b000000000-0x62b0000b0000
OE>     0x62b0000b0000-0x62be00000000
OE>     0x62be00000000-0x62be00010000
OE>     0x62be00010000-0x62c000000000
OE>     0x62c000000000-0x62c0000c0000
OE>     0x62c0000c0000-0x62ce00000000
OE>     0x62ce00000000-0x62ce00010000
OE>     0x62ce00010000-0x62d000000000
OE>     0x62d000000000-0x62d000240000
OE>     0x62d000240000-0x62de00000000
OE>     0x62de00000000-0x62de00010000
OE>     0x62de00010000-0x62e000000000
OE>     0x62e000000000-0x62e000050000
OE>     0x62e000050000-0x62ee00000000
OE>     0x62ee00000000-0x62ee00010000
OE>     0x62ee00010000-0x62f000000000
OE>     0x62f000000000-0x62f000060000
OE>     0x62f000060000-0x62fe00000000
OE>     0x62fe00000000-0x62fe00010000
OE>     0x62fe00010000-0x630000000000
OE>     0x630000000000-0x630000080000
OE>     0x630000080000-0x630e00000000
OE>     0x630e00000000-0x630e00010000
OE>     0x630e00010000-0x631000000000
OE>     0x631000000000-0x631000090000
OE>     0x631000090000-0x631e00000000
OE>     0x631e00000000-0x631e00010000
OE>     0x631e00010000-0x633000000000
OE>     0x633000000000-0x6330000b0000
OE>     0x6330000b0000-0x633e00000000
OE>     0x633e00000000-0x633e00010000
OE>     0x633e00010000-0x640000000000
OE>     0x640000000000-0x640000003000
OE>     0x7f219755d000-0x7f21978e6000
OE>     0x7f21978e6000-0x7f21978e9000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978e9000-0x7f21978ed000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978ed000-0x7f21978ee000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978ee000-0x7f21978ef000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978ef000-0x7f21978f0000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978f0000-0x7f21978f1000   /usr/lib/x86_64-linux-gnu/librt-2.31.so
OE>     0x7f21978f1000-0x7f2197913000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197913000-0x7f2197a41000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197a41000-0x7f2197a76000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197a76000-0x7f2197a77000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197a77000-0x7f2197a7a000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197a7a000-0x7f2197a7d000   /usr/lib/x86_64-linux-gnu/libasan.so.5.0.0
OE>     0x7f2197a7d000-0x7f2198323000
OE>     0x7f2198323000-0x7f21983dd000   /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs/sitmo.so
OE>     0x7f21983dd000-0x7f219842a000   /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs/sitmo.so
OE>     0x7f219842a000-0x7f2198451000   /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs/sitmo.so
OE>     0x7f2198451000-0x7f2198452000   /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs/sitmo.so
OE>     0x7f2198452000-0x7f219850e000   /tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo/libs/sitmo.so
OE>     0x7f219850e000-0x7f219864a000
OE>     0x7f219864a000-0x7f21988b6000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f21988b6000-0x7f2198a24000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f2198a24000-0x7f2198aaa000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f2198aaa000-0x7f2198aab000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f2198aab000-0x7f2198aad000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f2198aad000-0x7f2198cf3000   /usr/local/RDsan/lib/R/site-library/Rcpp/libs/Rcpp.so
OE>     0x7f2198cf3000-0x7f2198d55000
OE>     0x7f2198d55000-0x7f2198d62000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d62000-0x7f2198d85000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d85000-0x7f2198d90000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d90000-0x7f2198d91000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d91000-0x7f2198d92000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d92000-0x7f2198d9a000   /usr/local/RDsan/lib/R/library/tools/libs/tools.so
OE>     0x7f2198d9a000-0x7f2198fd0000
OE>     0x7f2198fd0000-0x7f2198fd3000   /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
OE>     0x7f2198fd3000-0x7f2199000000   /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
OE>     0x7f2199000000-0x7f2199018000   /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
OE>     0x7f2199018000-0x7f2199019000   /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
OE>     0x7f2199019000-0x7f219901a000   /usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
OE>     0x7f219901a000-0x7f2199037000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f2199037000-0x7f21992ac000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f21992ac000-0x7f21992de000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f21992de000-0x7f21992df000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f21992df000-0x7f21992e0000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f21992e0000-0x7f21992e2000   /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0
OE>     0x7f21992e2000-0x7f21992ec000   /usr/local/RDsan/lib/R/lib/libRlapack.so
OE>     0x7f21992ec000-0x7f2199528000   /usr/local/RDsan/lib/R/lib/libRlapack.so
OE>     0x7f2199528000-0x7f2199530000   /usr/local/RDsan/lib/R/lib/libRlapack.so
OE>     0x7f2199530000-0x7f2199531000   /usr/local/RDsan/lib/R/lib/libRlapack.so
OE>     0x7f2199531000-0x7f2199533000   /usr/local/RDsan/lib/R/lib/libRlapack.so
OE>     0x7f2199533000-0x7f219954d000
OE>     0x7f219954d000-0x7f219956a000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f219956a000-0x7f219965b000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f219965b000-0x7f2199678000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f2199678000-0x7f2199679000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f2199679000-0x7f219967b000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f219967b000-0x7f219968c000   /usr/local/RDsan/lib/R/library/stats/libs/stats.so
OE>     0x7f219968c000-0x7f2199823000
OE>     0x7f2199823000-0x7f2199830000   /usr/local/RDsan/lib/R/library/graphics/libs/graphics.so
OE>     0x7f2199830000-0x7f21998b1000   /usr/local/RDsan/lib/R/library/graphics/libs/graphics.so
OE>     0x7f21998b1000-0x7f21998be000   /usr/local/RDsan/lib/R/library/graphics/libs/graphics.so
OE>     0x7f21998be000-0x7f21998bf000   /usr/local/RDsan/lib/R/library/graphics/libs/graphics.so
OE>     0x7f21998bf000-0x7f21998c7000   /usr/local/RDsan/lib/R/library/graphics/libs/graphics.so
OE>     0x7f21998c7000-0x7f2199924000
OE>     0x7f2199924000-0x7f2199956000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f2199956000-0x7f21999b5000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f21999b5000-0x7f21999e2000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f21999e2000-0x7f21999e3000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f21999e3000-0x7f21999e4000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f21999e4000-0x7f2199a0a000   /usr/local/RDsan/lib/R/library/grDevices/libs/grDevices.so
OE>     0x7f2199a0a000-0x7f2199a59000
OE>     0x7f2199a59000-0x7f2199a5f000   /usr/local/RDsan/lib/R/library/utils/libs/utils.so
OE>     0x7f2199a5f000-0x7f2199a6e000   /usr/local/RDsan/lib/R/library/utils/libs/utils.so
OE>     0x7f2199a6e000-0x7f2199a72000   /usr/local/RDsan/lib/R/library/utils/libs/utils.so
OE>     0x7f2199a72000-0x7f2199a73000   /usr/local/RDsan/lib/R/library/utils/libs/utils.so
OE>     0x7f2199a73000-0x7f2199a76000   /usr/local/RDsan/lib/R/library/utils/libs/utils.so
OE>     0x7f2199a76000-0x7f219a1c4000
OE>     0x7f219a1c4000-0x7f219a1ca000   /usr/local/RDsan/lib/R/library/methods/libs/methods.so
OE>     0x7f219a1ca000-0x7f219a1d1000   /usr/local/RDsan/lib/R/library/methods/libs/methods.so
OE>     0x7f219a1d1000-0x7f219a1d5000   /usr/local/RDsan/lib/R/library/methods/libs/methods.so
OE>     0x7f219a1d5000-0x7f219a1d6000   /usr/local/RDsan/lib/R/library/methods/libs/methods.so
OE>     0x7f219a1d6000-0x7f219a1d9000   /usr/local/RDsan/lib/R/library/methods/libs/methods.so
OE>     0x7f219a1d9000-0x7f219a2f1000
OE>     0x7f219a2f1000-0x7f219a2f4000   /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so
OE>     0x7f219a2f4000-0x7f219a2fb000   /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so
OE>     0x7f219a2fb000-0x7f219a2fd000   /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so
OE>     0x7f219a2fd000-0x7f219a2fe000   /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so
OE>     0x7f219a2fe000-0x7f219a2ff000   /usr/lib/x86_64-linux-gnu/libnss_files-2.31.so
OE>     0x7f219a2ff000-0x7f219a41d000
OE>     0x7f219a41d000-0x7f219a424000   /usr/lib/x86_64-linux-gnu/gconv/gconv-modules.cache
OE>     0x7f219a424000-0x7f219a425000   /usr/local/RDsan/lib/R/library/translations/en/LC_MESSAGES/R.mo
OE>     0x7f219a425000-0x7f219a881000
OE>     0x7f219a881000-0x7f219ab67000   /usr/lib/locale/locale-archive
OE>     0x7f219ab67000-0x7f219cbd8000
OE>     0x7f219cbd8000-0x7f219d3b8000
OE>     0x7f219d3b8000-0x7f219d721000
OE>     0x7f219d721000-0x7f219d722000   /usr/lib/x86_64-linux-gnu/libicudata.so.66.1
OE>     0x7f219d722000-0x7f219d723000   /usr/lib/x86_64-linux-gnu/libicudata.so.66.1
OE>     0x7f219d723000-0x7f219f1e0000   /usr/lib/x86_64-linux-gnu/libicudata.so.66.1
OE>     0x7f219f1e0000-0x7f219f1e1000   /usr/lib/x86_64-linux-gnu/libicudata.so.66.1
OE>     0x7f219f1e1000-0x7f219f1e2000   /usr/lib/x86_64-linux-gnu/libicudata.so.66.1
OE>     0x7f219f1e2000-0x7f219f1f0000   /usr/lib/x86_64-linux-gnu/libtinfo.so.6.2
OE>     0x7f219f1f0000-0x7f219f1ff000   /usr/lib/x86_64-linux-gnu/libtinfo.so.6.2
OE>     0x7f219f1ff000-0x7f219f20d000   /usr/lib/x86_64-linux-gnu/libtinfo.so.6.2
OE>     0x7f219f20d000-0x7f219f211000   /usr/lib/x86_64-linux-gnu/libtinfo.so.6.2
OE>     0x7f219f211000-0x7f219f212000   /usr/lib/x86_64-linux-gnu/libtinfo.so.6.2
OE>     0x7f219f212000-0x7f219f214000
OE>     0x7f219f214000-0x7f219f2aa000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f2aa000-0x7f219f39b000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f39b000-0x7f219f3e4000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f3e4000-0x7f219f3e5000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f3e5000-0x7f219f3f0000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f3f0000-0x7f219f3f3000   /usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.28
OE>     0x7f219f3f3000-0x7f219f3f6000
OE>     0x7f219f3f6000-0x7f219f4df000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f4df000-0x7f219f65c000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f65c000-0x7f219f6e2000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f6e2000-0x7f219f6e3000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f6e3000-0x7f219f6f3000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f6f3000-0x7f219f6f4000   /usr/lib/x86_64-linux-gnu/libicui18n.so.66.1
OE>     0x7f219f6f4000-0x7f219f6f5000
OE>     0x7f219f6f5000-0x7f219f75a000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f75a000-0x7f219f83f000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f83f000-0x7f219f8c5000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f8c5000-0x7f219f8c6000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f8c6000-0x7f219f8d8000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f8d8000-0x7f219f8d9000   /usr/lib/x86_64-linux-gnu/libicuuc.so.66.1
OE>     0x7f219f8d9000-0x7f219f8db000
OE>     0x7f219f8db000-0x7f219f8dd000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8dd000-0x7f219f8ee000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8ee000-0x7f219f8f4000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8f4000-0x7f219f8f5000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8f5000-0x7f219f8f6000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8f6000-0x7f219f8f7000   /usr/lib/x86_64-linux-gnu/libz.so.1.2.11
OE>     0x7f219f8f7000-0x7f219f8f9000   /usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4
OE>     0x7f219f8f9000-0x7f219f906000   /usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4
OE>     0x7f219f906000-0x7f219f908000   /usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4
OE>     0x7f219f908000-0x7f219f909000   /usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4
OE>     0x7f219f909000-0x7f219f90a000   /usr/lib/x86_64-linux-gnu/libbz2.so.1.0.4
OE>     0x7f219f90a000-0x7f219f90c000
OE>     0x7f219f90c000-0x7f219f90f000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f90f000-0x7f219f927000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f927000-0x7f219f932000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f932000-0x7f219f933000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f933000-0x7f219f934000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f934000-0x7f219f935000   /usr/lib/x86_64-linux-gnu/liblzma.so.5.2.4
OE>     0x7f219f935000-0x7f219f937000   /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0
OE>     0x7f219f937000-0x7f219f99b000   /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0
OE>     0x7f219f99b000-0x7f219f9c3000   /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0
OE>     0x7f219f9c3000-0x7f219f9c4000   /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0
OE>     0x7f219f9c4000-0x7f219f9c5000   /usr/lib/x86_64-linux-gnu/libpcre2-8.so.0.9.0
OE>     0x7f219f9c5000-0x7f219f9d9000   /usr/lib/x86_64-linux-gnu/libreadline.so.8.0
OE>     0x7f219f9d9000-0x7f219fa02000   /usr/lib/x86_64-linux-gnu/libreadline.so.8.0
OE>     0x7f219fa02000-0x7f219fa0c000   /usr/lib/x86_64-linux-gnu/libreadline.so.8.0
OE>     0x7f219fa0c000-0x7f219fa0e000   /usr/lib/x86_64-linux-gnu/libreadline.so.8.0
OE>     0x7f219fa0e000-0x7f219fa14000   /usr/lib/x86_64-linux-gnu/libreadline.so.8.0
OE>     0x7f219fa14000-0x7f219fa15000
OE>     0x7f219fa15000-0x7f219fa18000   /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
OE>     0x7f219fa18000-0x7f219fa2a000   /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
OE>     0x7f219fa2a000-0x7f219fa2e000   /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
OE>     0x7f219fa2e000-0x7f219fa2f000   /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
OE>     0x7f219fa2f000-0x7f219fa30000   /usr/lib/x86_64-linux-gnu/libgcc_s.so.1
OE>     0x7f219fa30000-0x7f219fa3f000   /usr/lib/x86_64-linux-gnu/libm-2.31.so
OE>     0x7f219fa3f000-0x7f219fae6000   /usr/lib/x86_64-linux-gnu/libm-2.31.so
OE>     0x7f219fae6000-0x7f219fb7d000   /usr/lib/x86_64-linux-gnu/libm-2.31.so
OE>     0x7f219fb7d000-0x7f219fb7e000   /usr/lib/x86_64-linux-gnu/libm-2.31.so
OE>     0x7f219fb7e000-0x7f219fb7f000   /usr/lib/x86_64-linux-gnu/libm-2.31.so
OE>     0x7f219fb7f000-0x7f219fb80000   /usr/lib/x86_64-linux-gnu/libdl-2.31.so
OE>     0x7f219fb80000-0x7f219fb82000   /usr/lib/x86_64-linux-gnu/libdl-2.31.so
OE>     0x7f219fb82000-0x7f219fb83000   /usr/lib/x86_64-linux-gnu/libdl-2.31.so
OE>     0x7f219fb83000-0x7f219fb84000   /usr/lib/x86_64-linux-gnu/libdl-2.31.so
OE>     0x7f219fb84000-0x7f219fb85000   /usr/lib/x86_64-linux-gnu/libdl-2.31.so
OE>     0x7f219fb85000-0x7f219fb87000
OE>     0x7f219fb87000-0x7f219fbac000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fbac000-0x7f219fd24000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fd24000-0x7f219fd6e000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fd6e000-0x7f219fd6f000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fd6f000-0x7f219fd72000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fd72000-0x7f219fd75000   /usr/lib/x86_64-linux-gnu/libc-2.31.so
OE>     0x7f219fd75000-0x7f219fd79000
OE>     0x7f219fd79000-0x7f219fd80000   /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
OE>     0x7f219fd80000-0x7f219fd91000   /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
OE>     0x7f219fd91000-0x7f219fd96000   /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
OE>     0x7f219fd96000-0x7f219fd97000   /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
OE>     0x7f219fd97000-0x7f219fd98000   /usr/lib/x86_64-linux-gnu/libpthread-2.31.so
OE>     0x7f219fd98000-0x7f219fd9c000
OE>     0x7f219fd9c000-0x7f219fda2000   /usr/lib/x86_64-linux-gnu/libubsan.so.1.0.0
OE>     0x7f219fda2000-0x7f219fddc000   /usr/lib/x86_64-linux-gnu/libubsan.so.1.0.0
OE>     0x7f219fddc000-0x7f219fdf2000   /usr/lib/x86_64-linux-gnu/libubsan.so.1.0.0
OE>     0x7f219fdf2000-0x7f219fdf4000   /usr/lib/x86_64-linux-gnu/libubsan.so.1.0.0
OE>     0x7f219fdf4000-0x7f219fdf7000   /usr/lib/x86_64-linux-gnu/libubsan.so.1.0.0
OE>     0x7f219fdf7000-0x7f21a0709000
OE>     0x7f21a0709000-0x7f21a070b000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a070b000-0x7f21a0748000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a0748000-0x7f21a0749000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a0749000-0x7f21a074a000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a074a000-0x7f21a074b000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a074b000-0x7f21a074c000   /usr/local/RDsan/lib/R/lib/libRblas.so
OE>     0x7f21a074c000-0x7f21a088b000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a088b000-0x7f21a0d54000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a0d54000-0x7f21a0e86000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a0e86000-0x7f21a0e87000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a0e87000-0x7f21a0ea4000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a0ea4000-0x7f21a0f68000   /usr/local/RDsan/lib/R/lib/libR.so
OE>     0x7f21a0f68000-0x7f21a10db000
OE>     0x7f21a10db000-0x7f21a10fe000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a10fe000-0x7f21a11cf000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a11cf000-0x7f21a1200000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a1200000-0x7f21a1201000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a1201000-0x7f21a1204000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a1204000-0x7f21a1207000   /usr/lib/x86_64-linux-gnu/libasan.so.6.0.0
OE>     0x7f21a1207000-0x7f21a1aaf000
OE>     0x7f21a1aaf000-0x7f21a1ab0000   /usr/lib/x86_64-linux-gnu/ld-2.31.so
OE>     0x7f21a1ab0000-0x7f21a1ad3000   /usr/lib/x86_64-linux-gnu/ld-2.31.so
OE>     0x7f21a1ad3000-0x7f21a1adb000   /usr/lib/x86_64-linux-gnu/ld-2.31.so
OE>     0x7f21a1adb000-0x7f21a1adc000
OE>     0x7f21a1adc000-0x7f21a1add000   /usr/lib/x86_64-linux-gnu/ld-2.31.so
OE>     0x7f21a1add000-0x7f21a1ade000   /usr/lib/x86_64-linux-gnu/ld-2.31.so
OE>     0x7f21a1ade000-0x7f21a1adf000
OE>     0x7ffd72269000-0x7ffd72306000   [stack]
OE>     0x7ffd7238c000-0x7ffd7238f000   [vvar]
OE>     0x7ffd7238f000-0x7ffd72390000   [vdso]
OE>     0xffffffffff600000-0xffffffffff601000   [vsyscall]
OE> ==101==End of process memory map.
OE> ERROR: loading failed
OE> * removing ‘/tmp/RtmpOd32cX/pkg-lib171e3e4b42/sitmo’

 Stack trace:

 12. (function (...)  ...
 13. base:::withCallingHandlers(cli_message = function(msg) { ...
 14. get("pkg_install_do_plan", asNamespace("pak"))(...)
 15. pkgdepends::install_package_plan(plan = plan, lib = lib, num_workers = num_ ...
 16. base:::withCallingHandlers({ ...
 17. pkgdepends:::handle_events(state, events)
 18. pkgdepends:::handle_event(state, i)
 19. pkgdepends:::stop_task(state, worker)
 20. pkgdepends:::stop_task_build(state, worker)
 21. base:::throw(new_pkg_build_error("Failed to build source package {pkg}",  ...
 22. base:::signalCondition(cond)
 23. (function (e)  ...
 24. base:::stop(e)
 25. (function (e)  ...

 x Failed to build source package 'sitmo'

Execution halted
@billdenney
Copy link
Author

While trying to dig a bit deeper (and not really knowing what I'm reading), I found this answer that may be relevant. "If you are using shared ASan DSO, try LD_PRELOAD'ing Asan runtime into your program." at https://github.com/google/sanitizers/wiki/AddressSanitizer#faq

Is that something that could help? Is it something that could be modified in the Makevars or a similar place?

@billdenney
Copy link
Author

billdenney commented Mar 4, 2022

FYI, I tried export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6.0.0 before RUN RDsan -q -e "${PKGDEPS}", and it didn't fix the problem.

And, I tried rebuilding the docker images locally in case there were an architecture issue (I have an AMD processor that I'm using to test it). That also didn't fix the issue.

@mlampros
Copy link

mlampros commented Jul 22, 2022

@billdenney I know you've used a dockerfile, but by exporting LD_PRELOAD in the command line (as you mentioned) worked for me (I had also an issue with lgfortran that I overcame with a symlink),

docker run --rm -ti --security-opt seccomp=unconfined wch1/r-debug

# create symlink for lgfortran
sudo ln -s /usr/lib/x86_64-linux-gnu/libgfortran.so.5.0.0 /usr/lib/libgfortran.so

# then export the "libsan"
export LD_PRELOAD=/usr/lib/x86_64-linux-gnu/libasan.so.6.0.0

RDsan

# then installed required packages (for instance devtools)
install.packages('devtools', dependencies = TRUE, repos = 'https://cloud.r-project.org/')

# and tested code for ASAN

@pklampros
Copy link

I've also stumbled upon this issue when trying to install igraph using this container. Exporting LD_PRELOAD does not work for libasan.so.6.0.0 or libasan.so.8.0.0. Did you find a different solution @billdenney ?

@billdenney
Copy link
Author

I did not find a solution yet. (I also haven't tested in a while as my needs are a bit different at the moment.)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants