From owner-svn-src-all@freebsd.org Sat Jun 9 17:39:55 2018 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 9CBB91016141; Sat, 9 Jun 2018 17:39:55 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: from mail-io0-x22d.google.com (mail-io0-x22d.google.com [IPv6:2607:f8b0:4001:c06::22d]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 2C23586EB3; Sat, 9 Jun 2018 17:39:55 +0000 (UTC) (envelope-from markjdb@gmail.com) Received: by mail-io0-x22d.google.com with SMTP id t5-v6so19404366ioa.8; Sat, 09 Jun 2018 10:39:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to:user-agent; bh=q97nx81gxsWrCWwCRTdsEvWkLF8PgB1utw3u6wdc2fQ=; b=hWvVa5Ixvvq2QsmR2KQTm1jQn77qocLyhlNBLAGvuTm6wqXglEKXTpGYH/GrCHBczy sKsXJ9jvU95D8lu08nY3KqDGhTobWYMx2ef2ozJQb41RJy5QuQXYsU636u6S9bM4NXIx C0eEuSrxOsqTQ2Cw7E3exSi0p07VHLanY+/3vm/dzaoRN2FTB+jH8EgG8aT+6ADDR3Hr W5f35Himq65M/VCMaMkaXIPOQlJVvXVqNXLFKxQCr+E7cBtvuMfr5gXv4za+xApQI3X0 X/96LjS9R7Fx25w1cN5Wuklq1er8BO5josYPzbXJ4cOw7xvcGOir66MCOY4+LRIZxOkp cu/g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to:user-agent; bh=q97nx81gxsWrCWwCRTdsEvWkLF8PgB1utw3u6wdc2fQ=; b=lCmFKnUvDg1m1nh2x3ipEQaEL8J5Rv1cbnUWqdvsvjXNm0ngh8TnlnCrkvkTXKuCpw 78bzdpZBcTOlasFfwJnDuVESwLR0Rco9cJHKDcwwizXzXG0N2zuYF8I9VH+bb2HjBXSr sPPg8zgEo65ifM6JS5shOeITpQ4BZbxEicVDzKd9WUCzyj5L92sq9ZRvE32G7a3FRIkS PF80X9AVavcAvoU24Tcg9XAMChnUQjDkv/GlCjCidF7sa7GIak0Qf67qcaLkg26R9rTf EYF32Ob5sX5FaZGsBlOK09r3CKoYHGsV3xrRrQiUmcbr1h5EqUYnmbyHSWDCEgHpqUFy 64VQ== X-Gm-Message-State: APt69E3X7NqgWF1QuPgO29+WxoHmOhjLBpGeOm3EJe/wbIAeLbEbIIRJ qIjWuuVy17Q+h00Ecw9raEV7CT0o X-Google-Smtp-Source: ADUXVKJjMhoJZ76ZmrYCAjSU7bOmQvFf2rDPwBzNGyJAb/d5S9LNwC1INABXoD2tiag8HjlYGKXrOQ== X-Received: by 2002:a6b:8208:: with SMTP id e8-v6mr8865256iod.264.1528565994529; Sat, 09 Jun 2018 10:39:54 -0700 (PDT) Received: from pesky ([137.122.64.159]) by smtp.gmail.com with ESMTPSA id u206-v6sm2134934itc.40.2018.06.09.10.39.53 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sat, 09 Jun 2018 10:39:53 -0700 (PDT) Sender: Mark Johnston Date: Sat, 9 Jun 2018 13:39:51 -0400 From: Mark Johnston To: "O. Hartmann" Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org, bdrewery@freebsd.org Subject: Re: svn commit: r334883 - head/cddl/contrib/opensolaris/tools/ctf/cvt Message-ID: <20180609173951.GB1394@pesky> References: <201806091510.w59FAnIW036815@repo.freebsd.org> <20180609193527.46a0f9a6@thor.intern.walstatt.dynvpn.de> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20180609193527.46a0f9a6@thor.intern.walstatt.dynvpn.de> User-Agent: Mutt/1.10.0 (2018-05-17) X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 09 Jun 2018 17:39:55 -0000 On Sat, Jun 09, 2018 at 07:35:00PM +0200, O. Hartmann wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA512 > > Am Sat, 9 Jun 2018 15:10:49 +0000 (UTC) > Mark Johnston schrieb: > > > Author: markj > > Date: Sat Jun 9 15:10:49 2018 > > New Revision: 334883 > > URL: https://svnweb.freebsd.org/changeset/base/334883 > > > > Log: > > Don't process DWARF generated from non-C/C++ code. > > > > ctfconvert(1) is not designed to handle DWARF generated from such code, > > and will generally fail in non-obvious ways. Use an explicit check to > > help catch such potential failures. > > > > Reported by: Johannes Lundberg > > MFC after: 2 weeks > > > > Modified: > > head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c > > > > Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c > > ============================================================================== > > --- head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Sat Jun 9 15:10:39 > > 2018 (r334882) +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c > > Sat Jun 9 15:10:49 2018 (r334883) @@ -1901,7 +1901,7 @@ should_have_dwarf(Elf > > *elf) int > > dw_read(tdata_t *td, Elf *elf, char *filename __unused) > > { > > - Dwarf_Unsigned abboff, hdrlen, nxthdr; > > + Dwarf_Unsigned abboff, hdrlen, lang, nxthdr; > > Dwarf_Half vers, addrsz, offsz; > > Dwarf_Die cu = 0; > > Dwarf_Die child = 0; > > @@ -1941,8 +1941,8 @@ dw_read(tdata_t *td, Elf *elf, char *filename __unused > > } > > > > if ((rc = dwarf_next_cu_header_b(dw.dw_dw, &hdrlen, &vers, &abboff, > > - &addrsz, &offsz, NULL, &nxthdr, &dw.dw_err)) != DW_DLV_OK) { > > - if (dw.dw_err.err_error == DW_DLE_NO_ENTRY) > > + &addrsz, &offsz, NULL, &nxthdr, &dw.dw_err)) != DW_DLV_OK) { > > + if (dw.dw_err.err_error == DW_DLE_NO_ENTRY) > > exit(0); > > else > > terminate("rc = %d %s\n", rc, dwarf_errmsg(dw.dw_err)); > > @@ -1971,6 +1971,25 @@ dw_read(tdata_t *td, Elf *elf, char *filename __unused > > debug(1, "DWARF emitter: %s\n", prod); > > free(prod); > > } > > + > > + if (dwarf_attrval_unsigned(cu, DW_AT_language, &lang, &dw.dw_err) == 0) > > + switch (lang) { > > + case DW_LANG_C: > > + case DW_LANG_C89: > > + case DW_LANG_C99: > > + case DW_LANG_C11: > > + case DW_LANG_C_plus_plus: > > + case DW_LANG_C_plus_plus_03: > > + case DW_LANG_C_plus_plus_11: > > + case DW_LANG_C_plus_plus_14: > > + break; > > + default: > > + terminate("file contains DWARF for unsupported " > > + "language %d", lang); > > + } > > + else > > + warning("die %llu: failed to get language attribute: %s\n", > > + die_off(&dw, cu), dwarf_errmsg(dw.dw_err)); > > > > if ((dw.dw_cuname = die_name(&dw, cu)) != NULL) { > > char *base = xstrdup(basename(dw.dw_cuname)); > > _______________________________________________ > > svn-src-head@freebsd.org mailing list > > https://lists.freebsd.org/mailman/listinfo/svn-src-head > > To unsubscribe, send any mail to "svn-src-head-unsubscribe@freebsd.org" > This commit makes buildworld (WITH_META_MODE) failing: I added these identifiers in r334881, and the CI build is passing. Might this be a problem with META_MODE? > [...] > ===> cddl/usr.bin/ctfconvert (obj,all,install) > Building /usr/obj/usr/src/amd64.amd64/tmp/obj-tools/cddl/usr.bin/ctfconvert/dwarf.o > - --- dwarf.o --- > /usr/src/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1980:8: error: use of undeclared > identifier 'DW_LANG_C11' case DW_LANG_C11: > ^ > /usr/src/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1982:8: error: use of undeclared > identifier 'DW_LANG_C_plus_plus_03' case DW_LANG_C_plus_plus_03: > ^ > /usr/src/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1983:8: error: use of undeclared > identifier 'DW_LANG_C_plus_plus_11' case DW_LANG_C_plus_plus_11: > ^ > /usr/src/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c:1984:8: error: use of undeclared > identifier 'DW_LANG_C_plus_plus_14' case DW_LANG_C_plus_plus_14: > ^ > 4 errors generated. > *** [dwarf.o] Error code 1