NetBSD Problem Report #57351

From www@netbsd.org  Fri Apr 14 13:07:15 2023
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id BA38A1A9239
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 14 Apr 2023 13:07:14 +0000 (UTC)
Message-Id: <20230414130713.48BBF1A923A@mollari.NetBSD.org>
Date: Fri, 14 Apr 2023 13:07:13 +0000 (UTC)
From: jspath55@gmail.com
Reply-To: jspath55@gmail.com
To: gnats-bugs@NetBSD.org
Subject: Automated test usr.bin/c++/t_tsan_vptr_race:vptr_race fails intermittently on an amd64 machine
X-Send-Pr-Version: www-1.0

>Number:         57351
>Category:       toolchain
>Synopsis:       Automated test usr.bin/c++/t_tsan_vptr_race:vptr_race fails intermittently on an amd64 machine
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Apr 14 13:10:00 +0000 2023
>Originator:     Jim Spath
>Release:        10.0_BETA
>Organization:
>Environment:
NetBSD hi.me 10.0_BETA NetBSD 10.0_BETA (GENERIC) #0: Sun Feb 12 12:39:37 UTC 2023  mkrepro@mkrepro.NetBSD.org:/usr/src/sys/arch/amd64/compile/GENERIC amd64 x86_64 AMD 686-class NetBSD

>Description:
The intermittent failures on this automated test case are similar to ones reported in PR 57345 except with a lower failure rate.

I also set this case up as a frequently running cron job. The failures occur between 5 and 10 percent of the runs.

$ grep "^tc-end" /tmp/t_race.log |  wc  -l
    1326

$ grep "^tc-end" /tmp/t_race.log | head   
tc-end: 1681397762.59026, vptr_race, passed
tc-end: 1681397821.397715, vptr_race, passed
tc-end: 1681397881.440008, vptr_race, failed, atf-check failed; see the output of the test for details
tc-end: 1681397941.472436, vptr_race, passed
tc-end: 1681398001.510849, vptr_race, passed
tc-end: 1681398061.568513, vptr_race, passed
tc-end: 1681398121.602199, vptr_race, passed
tc-end: 1681398181.643119, vptr_race, passed
tc-end: 1681398241.688494, vptr_race, passed
tc-end: 1681398301.724397, vptr_race, passed

$ grep "^tc-end" /tmp/t_race.log | grep passed | wc -l
    1264

$ grep "^tc-end" /tmp/t_race.log | grep -v passed | wc -l
      63

>How-To-Repeat:
cd /usr/tests
atf-run usr.bin/c++/t_tsan_vptr_race:vptr_race


The errors look like this:

tps-count: 1
tp-start: 1681397880.832022, usr.bin/c++/t_tsan_vptr_race, 1
tc-start: 1681397880.832053, vptr_race
tc-so:Executing command [ ./test ]
tc-se:Fail: regexp WARNING: ThreadSanitizer: data race on vptr \(ctor/dtor vs virtual call\) not in stderr
tc-se:==================
tc-se:WARNING: ThreadSanitizer: data race (pid=2988)
tc-se:  Read of size 1 at 0x7b0400000058 by main thread:
tc-se:    #0 A::~A() <null> (test+0x401303)
tc-se:    #1 B::~B() <null> (test+0x4013ef)
tc-se:    #2 B::~B() <null> (test+0x401421)
tc-se:    #3 main <null> (test+0x40112c)
tc-se:
tc-se:  Previous write of size 1 at 0x7b0400000058 by thread T1:
tc-se:    #0 A::Done() <null> (test+0x4012ab)
tc-se:    #1 Thread1(void*) <null> (test+0x401078)
tc-se:
tc-se:  Location is heap block of size 16 at 0x7b0400000050 allocated by main thread:
tc-se:    #0 operator new(unsigned long) <null> (libtsan.so.1+0x28d5f)
tc-se:    #1 __static_initialization_and_destruction_0(int, int) test.cc (test+0x4011a7)
tc-se:    #2 _GLOBAL__sub_I_barrier test.cc (test+0x401203)
tc-se:    #3 ___start <null> (test+0x400f10)
tc-se:
tc-se:  Thread T1 (tid=2734, finished) created by main thread at:
tc-se:    #0 pthread_create <null> (libtsan.so.1+0x7caa2)
tc-se:    #1 main <null> (test+0x4010e9)
tc-se:
tc-se:SUMMARY: ThreadSanitizer: data race (/tmp/atf-run.f3NGrj/./test+0x401303) in A::~A()
tc-se:==================
tc-se:ThreadSanitizer: reported 1 warnings
tc-end: 1681397881.440008, vptr_race, failed, atf-check failed; see the output of the test for details
tp-end: 1681397881.440423, usr.bin/c++/t_tsan_vptr_race
info: time.end, Thu Apr 13 14:58:01 UTC 2023

>Fix:
Unknown cause. No obvious correlations to other apps running or system load.

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2023 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.