Date: Mon, 18 May 2026 21:58:31 +0200 From: Robert Clausecker <fuz@freebsd.org> To: Piotr Kubaj <pkubaj@freebsd.org> Cc: ports-committers@freebsd.org, dev-commits-ports-all@freebsd.org, dev-commits-ports-main@freebsd.org Subject: Re: git: 3bb0a93351df - main - lang/ruby*: fix runtime on powerpc64* Message-ID: <agtvZ_ZlMj4Nq6J5@fuz.su> In-Reply-To: <6a0b6ad4.37103.760e0311@gitrepo.freebsd.org>
index | next in thread | previous in thread | raw e-mail
Hi Piotr, Am Mon, May 18, 2026 at 07:39:00PM +0000 schrieb Piotr Kubaj: > The branch main has been updated by pkubaj: > > URL: https://cgit.FreeBSD.org/ports/commit/?id=3bb0a93351df3e8d1d7263c39e49e228ff388123 > > commit 3bb0a93351df3e8d1d7263c39e49e228ff388123 > Author: Piotr Kubaj <pkubaj@FreeBSD.org> > AuthorDate: 2026-05-18 13:46:13 +0000 > Commit: Piotr Kubaj <pkubaj@FreeBSD.org> > CommitDate: 2026-05-18 19:38:23 +0000 > > lang/ruby*: fix runtime on powerpc64* > > The hand-written `coroutine_transfer` in `coroutine/ppc64le/Context.S` > lacks the ELFv2 ABI global entry prologue. When the function is reached > via the PLT (lazy resolution path), r2 (TOC pointer) is left pointing > at whatever the resolver had loaded — typically the dynamic linker's > own TOC — instead of libruby's TOC. > > The wrong r2 propagates through the fiber switch into `fiber_entry`, > which jumps into `fiber_restore_thread` → `rb_current_ec_set`. The > first PLT thunk inside the new fiber (`__plt___tls_get_addr` for the > `ruby_current_ec` thread-local) computes its GOT entry as > `r2 + offset` and segfaults dereferencing the bogus address. > > Fixes build of textproc/rubygem-nokogiri and devel/rubygem-glib2. I wonder if this is similar to the issue plaguing the two ports on armv7! Will have to look into that in detail. -- () ascii ribbon campaign - for an encoding-agnostic world /\ - against html email - against proprietary attachmentshome | help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?agtvZ_ZlMj4Nq6J5>
