From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 58207 invoked by alias); 29 Nov 2019 11:48:04 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 58191 invoked by uid 89); 29 Nov 2019 11:48:03 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-15.3 required=5.0 tests=AWL,BAYES_00,GIT_PATCH_0,GIT_PATCH_1,GIT_PATCH_2,GIT_PATCH_3,SPF_PASS autolearn=ham version=3.3.1 spammy=sanitizer X-HELO: us-smtp-1.mimecast.com Received: from us-smtp-delivery-1.mimecast.com (HELO us-smtp-1.mimecast.com) (207.211.31.120) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Fri, 29 Nov 2019 11:48:02 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1575028080; h=from:from:reply-to:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=G/da0dd2U5l5Lju9r5i1kDljkgHH5jP/QpOwuCeqc+0=; b=JuqozBiE7KZ5X2haOftm3Zw0Jwg9LAldRKGsOdH/hZaXfPWJEt1xiu1UH7C67AQxYJd18I ejTLmvLc8L686Px1OBu/pTNyLvEDQk54Jriqt5tASM+0hymH6y59xEMg5YfjX41MO3QZbn wOZ5bqSBLArE5ruqi1+w/vE20gaZJX4= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-17-zP08nMWqN7eFRmAmaiJvPA-1; Fri, 29 Nov 2019 06:47:59 -0500 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id B618E18557C0; Fri, 29 Nov 2019 11:47:57 +0000 (UTC) Received: from tucnak.zalov.cz (ovpn-117-59.ams2.redhat.com [10.36.117.59]) by smtp.corp.redhat.com (Postfix) with ESMTPS id 308CC60BE2; Fri, 29 Nov 2019 11:47:57 +0000 (UTC) Received: from tucnak.zalov.cz (localhost [127.0.0.1]) by tucnak.zalov.cz (8.15.2/8.15.2) with ESMTP id xATBlsmp014978; Fri, 29 Nov 2019 12:47:55 +0100 Received: (from jakub@localhost) by tucnak.zalov.cz (8.15.2/8.15.2/Submit) id xATBlqnZ014977; Fri, 29 Nov 2019 12:47:52 +0100 Date: Fri, 29 Nov 2019 11:48:00 -0000 From: Jakub Jelinek To: Matthias Klose Cc: gcc Development , Martin =?utf-8?B?TGnFoWth?= Subject: Re: libsanitizer in GCC 10 is dropping symbols without bumping the soversions Message-ID: <20191129114752.GK10088@tucnak> Reply-To: Jakub Jelinek References: MIME-Version: 1.0 In-Reply-To: User-Agent: Mutt/1.11.3 (2019-02-01) X-Mimecast-Spam-Score: 0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: quoted-printable Content-Disposition: inline X-IsSubscribed: yes X-SW-Source: 2019-11/txt/msg00246.txt.bz2 On Fri, Nov 29, 2019 at 12:28:51PM +0100, Matthias Klose wrote: > libsanitizer on trunk only bumps the soversion for asan, but the other li= braries > drop some symbols without bumping the soname, Are these changes intended,= and > should the soversions be bumped? libsanitizer libs have upstream that doesn't really care about something like ABI. =46rom this I'd be only worried about libubsan. liblsan isn't a library that anybody should call anything from directly except the malloc*/operator new/delete stuff it is overriding, it is kind of libefence or other malloc replacement libraries. libtsan isn't like that, but still the actual ABI is only in __tsan_* APIs, OnPrint seems just like a screwup and the libc API interceptors shouldn't cause harm, they are defined in libc and programs can use it directly from there. __ubsan_handle_function_type_mismatch* is something we don't use (Martin, should we add such sanitizer? We have gimple_call_fntype vs. actual decl types, but it would need some inspection on what the sanitizer really does), but still e.g. clang compiled binaries could and could be (at least in theory) be linked against gcc libubsan. > diff --git a/debian/liblsan0.symbols b/debian/liblsan0.symbols > index f318d9a..5aa23a6 100644 > --- a/debian/liblsan0.symbols > +++ b/debian/liblsan0.symbols > @@ -1,5 +1,4 @@ > liblsan.so.0 liblsan0 #MINVER# > - OnPrint@Base 8 > _ZdaPv@Base 4.9 > _ZdaPvRKSt9nothrow_t@Base 4.9 > _ZdaPvSt11align_val_t@Base 8 > @@ -138,7 +140,6 @@ liblsan.so.0 liblsan0 #MINVER# > calloc@Base 4.9 > cfree@Base 4.9 > free@Base 4.9 > - (arch=3Dbase-any-any-amd64 any-mips any-mipsel)internal_sigreturn@Base 7 > mallinfo@Base 4.9 > malloc@Base 4.9 > malloc_usable_size@Base 4.9 >=20 > diff --git a/debian/libtsan0.symbols b/debian/libtsan0.symbols > index 827bb58..6a282a4 100644 > --- a/debian/libtsan0.symbols > +++ b/debian/libtsan0.symbols > @@ -35,7 +35,6 @@ libtsan.so.0 libtsan0 #MINVER# > AnnotateThreadName@Base 4.9 > AnnotateTraceMemory@Base 4.9 > AnnotateUnpublishMemoryRange@Base 4.9 > - OnPrint@Base 8 > RunningOnValgrind@Base 4.9 > ThreadSanitizerQuery@Base 4.9 > ValgrindSlowdown@Base 4.9 > @@ -1637,7 +1712,7 @@ libtsan.so.0 libtsan0 #MINVER# > initgroups@Base 4.9 > inotify_init1@Base 4.9 > inotify_init@Base 4.9 > - (arch=3Dbase-any-any-amd64 any-mips any-mipsel)internal_sigreturn@Base 7 > +#MISSING: 10# (arch=3Dbase-any-any-amd64 any-mips > any-mipsel)internal_sigreturn@Base 7 > ioctl@Base 4.9 > kill@Base 4.9 > lgamma@Base 4.9 >=20 > diff --git a/debian/libubsan1.symbols b/debian/libubsan1.symbols > index b829376..731d0db 100644 > --- a/debian/libubsan1.symbols > +++ b/debian/libubsan1.symbols > @@ -1,5 +1,4 @@ > libubsan.so.1 libubsan1 #MINVER# > - OnPrint@Base 8 > __asan_backtrace_alloc@Base 4.9 > __asan_backtrace_close@Base 4.9 > @@ -91,8 +93,8 @@ libubsan.so.1 libubsan1 #MINVER# > __ubsan_handle_dynamic_type_cache_miss_abort@Base 4.9 > __ubsan_handle_float_cast_overflow@Base 4.9 > __ubsan_handle_float_cast_overflow_abort@Base 4.9 > - __ubsan_handle_function_type_mismatch@Base 4.9 > - __ubsan_handle_function_type_mismatch_abort@Base 4.9 > + __ubsan_handle_function_type_mismatch_v1@Base 4.9 > + __ubsan_handle_function_type_mismatch_v1_abort@Base 4.9 > __ubsan_handle_implicit_conversion@Base 9 > __ubsan_handle_implicit_conversion_abort@Base 9 > __ubsan_handle_invalid_builtin@Base 8 > @@ -126,4 +128,3 @@ libubsan.so.1 libubsan1 #MINVER# > __ubsan_handle_vla_bound_not_positive_abort@Base 4.9 > __ubsan_on_report@Base 9 > __ubsan_vptr_type_cache@Base 4.9 > - (arch=3Dbase-any-any-amd64 any-mips any-mipsel)internal_sigreturn@Base 7 Jakub