New issue
Advanced search Search tips

Issue 921708 link

Starred by 4 users

Issue metadata

Status: Verified
Owner:
Closed: Jan 19
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

leak sanitizer warnings in crosvm

Project Member Reported by manojgupta@chromium.org, Jan 14

Issue description

After updating crosvm to build with sanitizers (https://chromium-review.googlesource.com/c/chromiumos/overlays/chromiumos-overlay/+/1407826), I found the following issues in crosvm unit test:

1. odr violations reported:

crosvm-0.0.1-r279:  * ASAN error detected:
crosvm-0.0.1-r279:  * =================================================================
crosvm-0.0.1-r279:  * ==31271==ERROR: AddressSanitizer: odr-violation (0x7f926ab11420):
crosvm-0.0.1-r279:  *   [1] size=0 'anon.d59a89eaff93c774f0a2f89c9224e2ce.7' 33c5u6qtoh4rvyby
crosvm-0.0.1-r279:  *   [2] size=0 '' 1dq20niodil9pohi
crosvm-0.0.1-r279:  * These globals were registered at these points:
crosvm-0.0.1-r279:  *   [1]:
crosvm-0.0.1-r279:  *     #0 0x7f92690d932e in __asan_register_globals /var/tmp/portage/dev-lang/rust-1.31.0/work/rustc-1.31.0-src/src/libcompiler_builtins/compiler-rt/lib/asan/asan_globals.cc:359:3
crosvm-0.0.1-r279:  *     #1 0x7f92690da22b in __asan_register_elf_globals /var/tmp/portage/dev-lang/rust-1.31.0/work/rustc-1.31.0-src/src/libcompiler_builtins/compiler-rt/lib/asan/asan_globals.cc:342:3
crosvm-0.0.1-r279:  *     #2 0x7f92688e5a1c in __libc_start_main (/lib64/libc.so.6+0x21a1c)
crosvm-0.0.1-r279:  * 
crosvm-0.0.1-r279:  *   [2]:
crosvm-0.0.1-r279:  *     #0 0x7f92690d932e in __asan_register_globals /var/tmp/portage/dev-lang/rust-1.31.0/work/rustc-1.31.0-src/src/libcompiler_builtins/compiler-rt/lib/asan/asan_globals.cc:359:3
crosvm-0.0.1-r279:  *     #1 0x7f92690da22b in __asan_register_elf_globals /var/tmp/portage/dev-lang/rust-1.31.0/work/rustc-1.31.0-src/src/libcompiler_builtins/compiler-rt/lib/asan/asan_globals.cc:342:3
crosvm-0.0.1-r279:  *     #2 0x7f92688e5a1c in __libc_start_main (/lib64/libc.so.6+0x21a1c)
crosvm-0.0.1-r279:  * 
crosvm-0.0.1-r279:  * ==31271==HINT: if you don't care about these errors you may set ASAN_OPTIONS=detect_odr_violation=0
crosvm-0.0.1-r279:  * SUMMARY: AddressSanitizer: odr-violation: global 'anon.d59a89eaff93c774f0a2f89c9224e2ce.7' at 33c5u6qtoh4rvyby


2. I tried to disable the odr errors by setting it to false

--- a/chromeos-base/crosvm/crosvm-9999.ebuild
+++ b/chromeos-base/crosvm/crosvm-9999.ebuild
@@ -56,6 +56,8 @@ RDEPEND="
 "
 DEPEND="${RDEPEND}"
 
+ASAN_OPTIONS=detect_odr_violation=0
+
 src_unpack() {


But this found another problem.

 * ASAN error detected:
 * ==236317==WARNING: LeakSanitizer is disabled in forked process.
 
Owner: za...@chromium.org
Status: Assigned (was: Untriaged)
 Issue 2  seems to be fixed in compiler-rt upstream

commit 2de6c3ce4d95b84ebd01ee22cacb27064213b4e1
Author: Vitaly Buka <vitalybuka@google.com>
Date:   Mon Aug 27 17:26:28 2018 +0000

    Revert "[lsan] Do not check for leaks in the forked process"
    
    Users need leak reports in forks.
    
    This reverts commit r334036.
    
    git-svn-id: https://llvm.org/svn/llvm-project/compiler-rt/trunk@340758 91177308-0d34-0410-b5e6-96231b3b80d8

Zach/chirantan, you cherry-pick to rust ?
Summary: leak sanitizer warnings in crosvm (was: leak sanitizer warningas in crosvm)
Project Member

Comment 3 by bugdroid1@chromium.org, Jan 19 (4 days ago)

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/3919704d4e07bb78ae5566e804b0e8a607b1589b

commit 3919704d4e07bb78ae5566e804b0e8a607b1589b
Author: Manoj Gupta <manojgupta@google.com>
Date: Sat Jan 19 04:05:20 2019

rust: Add a llvm upstream fix for lsan.

Add an upstream lsan fix to rust.

BUG= chromium:921708 
TEST=sudo emerge rust works.

Change-Id: Iab3f2932a300579379eed0503d07c694e62079c0
Reviewed-on: https://chromium-review.googlesource.com/1419219
Commit-Ready: Manoj Gupta <manojgupta@chromium.org>
Tested-by: Manoj Gupta <manojgupta@chromium.org>
Reviewed-by: Chirantan Ekbote <chirantan@chromium.org>

[add] https://crrev.com/3919704d4e07bb78ae5566e804b0e8a607b1589b/dev-lang/rust/files/0006-lsan-enable-in-fork.patch
[modify] https://crrev.com/3919704d4e07bb78ae5566e804b0e8a607b1589b/dev-lang/rust/rust-1.31.0.ebuild
[add] https://crrev.com/3919704d4e07bb78ae5566e804b0e8a607b1589b/dev-lang/rust/rust-1.31.0-r1.ebuild

Comment 4 by manojgupta@chromium.org, Jan 19 (3 days ago)

Owner: manojgupta@chromium.org
Status: Verified (was: Assigned)

Sign in to add a comment