From nobody Wed Sep 20 11:42:32 2023 X-Original-To: dev-commits-ports-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4RrGqD4PV8z4tY4g; Wed, 20 Sep 2023 11:42:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4RrGqD3q0wz3DGx; Wed, 20 Sep 2023 11:42:32 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1695210152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ps+LNUvxRHNWkzGFAlYRcuvSJO5WCBWd/MbvVCXR2bk=; b=ttbACXkwBWcfek78cQfCW3WFhud6caKl4h7WqYuOZXhMT4YxHcrpvqT489fRQN1c1+mAjS hp1kP8x/MqVsccu/nM3QJ+rf6r2/8Su04kZU8rXmfHY8E3hQa7rbKbCinfQvyXeDaN1kmK x9ddEzBAq6xJmQ0X8H7hi/vl53pClw1nBNjmlHfjDiycSD5poWkB9i2xBArjRfCqcd1QND VZB9lN/nDMqcBQui0Rh/OUxoIplGQkwLwApHDYMXNDRhJpnKVqIeQPg1QCtNLgqpfZDDma duKxKtJ9iztQAHrZ8buvFFO/nJS0oOYc5Br8Pudd+G/5/Q6i+LfyyTWBB9vRXw== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1695210152; a=rsa-sha256; cv=none; b=f/y1CK4uXk63Kl542gzyDpouoZcVuoGh8hyj8okyT3rZhtA9voLZl8y7v7IvTTwFuFIhfw q+RHNBZoe/5mXY2xRTY3KZCgEtSDgl0RVh1VEnX4/oMt9zp4jMxE8iebwVC/UgAA9LfTmR IVEs4VhemaIR/dFBbCafV5aBdArecVkEw/WZE5sRe/konoU7epJuFMt1V+PxqQsu/vacfF J1lZbFfB/borqiuSTOuInJaL+Gpy3tmrBbyMfAQXO/Hz2neD16oaavdHymA4rhF0WaWQT7 ctDxcWEXw1MEh3bAYrFbk8zHa8bWBZfl8AdTsd7fNZwpFOK7O4n0ucS4HFZpnw== ARC-Authentication-Results: i=1; mx1.freebsd.org; none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1695210152; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=ps+LNUvxRHNWkzGFAlYRcuvSJO5WCBWd/MbvVCXR2bk=; b=tCEF3AgqtRI6TA/31zuAytJmZWf3ru4JL8eOb8X5JogV4wFqwo4yGo/0W4igPexBh0kWtR wR0IESiHUPPSddQJv9OpydOFpAsX05PJhIzkMt8VRs5oxp6YRDL4Mif9z+hNzaPmQq0Q4M MJTspr6Fk+LwYPc1duHAv9ASkVsQXNjHRWtCwiPQCDPmXt9i4xpWw5hZ+zKvPO9EqAy2qE 4yOOseCwPeKdw0bMDcDsCxgcmEtfL6Kg2zzMNwlxzmLI19Z1pyzzythYiW4Zg4ASpVq+OL ncni0+NrIp92BQ1dOGJ2PwpI7NLZimxJ23a7jLUA4V4U6rugReRmBz0TmNXZzg== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 4RrGqD2ZLzzv0r; Wed, 20 Sep 2023 11:42:32 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.17.1/8.17.1) with ESMTP id 38KBgW7N019148; Wed, 20 Sep 2023 11:42:32 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.17.1/8.17.1/Submit) id 38KBgWTR019145; Wed, 20 Sep 2023 11:42:32 GMT (envelope-from git) Date: Wed, 20 Sep 2023 11:42:32 GMT Message-Id: <202309201142.38KBgWTR019145@gitrepo.freebsd.org> To: ports-committers@FreeBSD.org, dev-commits-ports-all@FreeBSD.org, dev-commits-ports-main@FreeBSD.org From: Fernando =?utf-8?Q?Apestegu=C3=ADa?= Subject: git: 3d864ab97210 - main - devel/valgrind: patch for ifuncs List-Id: Commit messages for all branches of the ports repository List-Archive: https://lists.freebsd.org/archives/dev-commits-ports-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-ports-all@freebsd.org X-BeenThere: dev-commits-ports-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: fernape X-Git-Repository: ports X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 3d864ab9721054806c92c3c0588b8a45f80d8aa2 Auto-Submitted: auto-generated The branch main has been updated by fernape: URL: https://cgit.FreeBSD.org/ports/commit/?id=3d864ab9721054806c92c3c0588b8a45f80d8aa2 commit 3d864ab9721054806c92c3c0588b8a45f80d8aa2 Author: Paul Floyd AuthorDate: 2023-09-20 07:54:04 +0000 Commit: Fernando ApesteguĂ­a CommitDate: 2023-09-20 11:42:11 +0000 devel/valgrind: patch for ifuncs The work for simd support uses @gnu_indirect_function. When Valgrind sees binaries using such function it expects to have its own ifunc_handler. Until now there wasn't one for FreeBSD so Valgrind terminates with an abort. This patch merges the fix maintainer and creator made upstream. PR: 273955 Reported by: pjfloyd@wanadoo.fr (maintainer) --- devel/valgrind/Makefile | 28 ++++++++++--------- .../valgrind/files/patch-coregrind-vg_preloaded.c | 31 ++++++++++++++++++++++ 2 files changed, 47 insertions(+), 12 deletions(-) diff --git a/devel/valgrind/Makefile b/devel/valgrind/Makefile index 0eb2d678cbb1..33f46d7e86d7 100644 --- a/devel/valgrind/Makefile +++ b/devel/valgrind/Makefile @@ -1,6 +1,6 @@ PORTNAME= valgrind PORTVERSION= 3.21.0 -PORTREVISION= 1 +PORTREVISION= 2 PORTEPOCH= 1 CATEGORIES= devel MASTER_SITES= SOURCEWARE/valgrind @@ -14,9 +14,12 @@ LICENSE_FILE= ${WRKSRC}/COPYING ONLY_FOR_ARCHS= amd64 i386 -USES= autoreconf cpe gmake pathfix perl5 pkgconfig shebangfix python:3.9+,run tar:bz2 +USES= autoreconf cpe gmake pathfix perl5 pkgconfig shebangfix \ + python:3.9+,run tar:bz2 USE_PERL5= build -SHEBANG_FILES= callgrind/callgrind_annotate.in callgrind/callgrind_control.in cachegrind/cg_merge.in cachegrind/cg_diff.in cachegrind/cg_annotate.in +SHEBANG_FILES= callgrind/callgrind_annotate.in callgrind/callgrind_control.in \ + cachegrind/cg_merge.in cachegrind/cg_diff.in \ + cachegrind/cg_annotate.in GNU_CONFIGURE= yes CONFIGURE_ENV+= ac_cv_path_PERL=${PERL} @@ -24,7 +27,16 @@ SSP_UNSAFE= yes LIB32_PATH?= /usr/lib32/libc.so CONFLICTS= valgrind-devel -PORTDOCS= html + +# Valgrind needs to read debuginfo from its own preload shared libraries +# (quote from README_PACKAGERS +#-- Don't strip the debug info off lib/valgrind/$platform/vgpreload*.so +# in the installation tree. Either Valgrind won't work at all, or it +# will still work if you do, but will generate less helpful error +# messages.) +STRIP= # empty + +PORTDOCS= html OPTIONS_DEFINE= DOCS MANPAGES MPI OPTIONS_DEFINE_amd64= 32BIT @@ -34,14 +46,6 @@ OPTIONS_DEFAULT_amd64= 32BIT .endif OPTIONS_SUB= yes -# Valgrind needs to read debuginfo from its own preload shared libraries -# (quote from README_PACKAGERS -#-- Don't strip the debug info off lib/valgrind/$platform/vgpreload*.so -# in the installation tree. Either Valgrind won't work at all, or it -# will still work if you do, but will generate less helpful error -# messages.) -STRIP= # empty - 32BIT_DESC= Enable debugging of 32-bit programs (requires lib32) MPI_DESC= Enable build of MPI wrappers diff --git a/devel/valgrind/files/patch-coregrind-vg_preloaded.c b/devel/valgrind/files/patch-coregrind-vg_preloaded.c new file mode 100644 index 000000000000..870626ec4edd --- /dev/null +++ b/devel/valgrind/files/patch-coregrind-vg_preloaded.c @@ -0,0 +1,31 @@ +--- coregrind/vg_preloaded.c.orig 2023-09-19 20:30:09.413386000 +0200 ++++ coregrind/vg_preloaded.c 2023-09-19 20:32:14.366333000 +0200 +@@ -228,7 +228,27 @@ + + #elif defined(VGO_freebsd) + +-// nothing specific currently ++#if (FREEBSD_VERS >= FREEBSD_14) ++ ++void * VG_NOTIFY_ON_LOAD(ifunc_wrapper) (void); ++void * VG_NOTIFY_ON_LOAD(ifunc_wrapper) (void) ++{ ++ OrigFn fn; ++ Addr result = 0; ++ Addr fnentry; ++ ++ /* Call the original indirect function and get it's result */ ++ VALGRIND_GET_ORIG_FN(fn); ++ CALL_FN_W_v(result, fn); ++ ++ fnentry = result; ++ ++ VALGRIND_DO_CLIENT_REQUEST_STMT(VG_USERREQ__ADD_IFUNC_TARGET, ++ fn.nraddr, fnentry, 0, 0, 0); ++ return (void*)result; ++} ++ ++#endif + + #elif defined(VGO_solaris) +