Closed
Bug 1481638
Opened 7 years ago
Closed 7 years ago
MOZ_CARGO_WRAP_LDFLAGS should filter out CFI santization
Categories
(Firefox Build System :: General, enhancement)
Firefox Build System
General
Tracking
(firefox63 fixed)
RESOLVED
FIXED
mozilla63
| Tracking | Status | |
|---|---|---|
| firefox63 | --- | fixed |
People
(Reporter: tjr, Assigned: tjr)
References
(Blocks 2 open bugs)
Details
Attachments
(1 file)
Not doing so results in passing these options to cargo and that causes errors.
| Assignee | ||
Comment 1•7 years ago
|
||
Specifically you get segfaults on the build-script-build that look like this:
>#0 0x00007ffff72c00ed in __GI___get_nprocs () at ../sysdeps/unix/sysv/linux/getsysstats.c:178
>#1 0x00007ffff7287d20 in posix_sysconf (name=84) at ../sysdeps/posix/sysconf.c:631
>#2 linux_sysconf (name=84) at ../sysdeps/unix/sysv/linux/x86/../sysconf.c:140
>#3 __GI___sysconf (name=84) at ../sysdeps/unix/sysv/linux/x86/sysconf.c:36
>#4 0x00005555555bcf45 in malloc_ncpus () at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:831
>#5 malloc_init_hard_recursible () at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:1418
>#6 malloc_init_hard () at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:1503
>#7 malloc_init () at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:317
>#8 ialloc_body (zero=255, slow_path=255, size=<optimized out>, tsdn=<optimized out>, usize=<optimized out>) at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:1583
>#9 calloc (num=<optimized out>, num@entry=1, size=<optimized out>, size@entry=32) at /checkout/src/liballoc_jemalloc/../jemalloc/src/jemalloc.c:1824
>#10 0x00007ffff79b37e5 in _dlerror_run (operate=operate@entry=0x7ffff79b30d0 <dlsym_doit>, args=args@entry=0x7fffffffe710) at dlerror.c:140
>#11 0x00007ffff79b3166 in __dlsym (handle=<optimized out>, name=0x555555561287 "signal") at dlsym.c:70
>#12 0x000055555559dcc3 in __interception::GetRealFunctionAddress(char const*, unsigned long*, unsigned long, unsigned long) ()
> at /home/tom/Documents/moz/mozilla-unified-cfi/build/build-clang/build-clang-339310/src/llvm/projects/compiler-rt/lib/interception/interception_linux.cc:33
>#13 0x000055555559dbf4 in InitializeSignalInterceptors ()
> at /home/tom/Documents/moz/mozilla-unified-cfi/build/build-clang/build-clang-339310/src/llvm/projects/compiler-rt/lib/ubsan/../sanitizer_common/sanitizer_signal_interceptors.inc:85
>#14 InitializeDeadlySignals ()
> at /home/tom/Documents/moz/mozilla-unified-cfi/build/build-clang/build-clang-339310/src/llvm/projects/compiler-rt/lib/ubsan/ubsan_signals_standalone.cc:60
>#15 0x00007ffff7de5806 in _dl_init (main_map=0x7ffff7ffe170, argc=1, argv=0x7fffffffe7f8, env=0x7fffffffe808) at dl-init.c:104
>#16 0x00007ffff7dd60ca in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
| Assignee | ||
Comment 2•7 years ago
|
||
This may only happen locally, which implies it might be something about rust's optimization level?
I believe that filtering out cfi at this point only affects cfi sanitization of build-tool code though, so we're not losing any security.
| Assignee | ||
Comment 3•7 years ago
|
||
MozReview-Commit-ID: C85uJBNugiY
Comment 4•7 years ago
|
||
Comment on attachment 8998960 [details]
Bug 1481638 Do not pass CFI sanitization flags to MOZ_CARGO_WRAP_LDFLAGS r=ted
Ted Mielczarek [:ted] [:ted.mielczarek] has approved the revision.
Attachment #8998960 -
Flags: review+
| Assignee | ||
Updated•7 years ago
|
Keywords: checkin-needed
Pushed by nerli@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3208575a228a
Do not pass CFI sanitization flags to MOZ_CARGO_WRAP_LDFLAGS r=ted
Keywords: checkin-needed
Comment 6•7 years ago
|
||
| bugherder | ||
Status: NEW → RESOLVED
Closed: 7 years ago
status-firefox63:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla63
You need to log in
before you can comment on or make changes to this bug.
Description
•