Summary: | lang/php71 and lang/php72 with extensions dumps core on aarch64 | ||
---|---|---|---|
Product: | Ports & Packages | Reporter: | Henri Hennebert <hlh> |
Component: | Individual Port(s) | Assignee: | Torsten Zuehlsdorff <tz> |
Status: | Closed FIXED | ||
Severity: | Affects Only Me | CC: | mikael, pi |
Priority: | --- | Flags: | bugzilla:
maintainer-feedback?
(tz) |
Version: | Latest | ||
Hardware: | Any | ||
OS: | Any | ||
Bug Depends on: | 233204 | ||
Bug Blocks: | 201763 |
Description
Henri Hennebert
2018-10-16 08:49:21 UTC
I don't have the problem here: pkg info|grep php php72-7.2.11 PHP Scripting Language php72-session-7.2.11 The session shared extension for php php -v PHP 7.2.11 (cli) (built: Nov 6 2018 19:37:43) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies php -m [PHP Modules] Core date libxml mysqlnd pcre Reflection session SPL standard [Zend Modules] uname -a FreeBSD tegra-x1 13.0-CURRENT FreeBSD 13.0-CURRENT #17 r339595M: Mon Oct 22 18:34:25 CEST 2018 root@pouet:/usr/obj/usr/src/arm64.aarch64/sys/JETSON-TX1 arm64 do you have anything in make.conf? My make.conf: KERNCONF?=NAKISKA MODULES_OVERRIDE=zfs opensolaris fdescfs netgraph rc4 accf_http accf_data dtrace tmpfs pf pflog pfsync allwinner dtb/allwinner DEFAULT_VERSIONS=php=7.2 DEFAULT_VERSIONS+=bdb=5 DEFAULT_VERSIONS+=perl5=5.26 BATCH=yes (In reply to mikael.urankar from comment #1) I also have no problems with amd64. Did you test it on arm64? (In reply to Jochen Neumeister from comment #3) My report was for aarch64, tested on rpi3 12.0-beta2 and nvidia jetson tx1 13-current. I haven't tried on amd64. hlh@restart.be: are you still having problems? > DEFAULT_VERSIONS = php = 7.2 You can delete that. PHP72 is default Do you still have the problem? If that's the case can you try the wip patch in bug #233204? (In reply to mikael.urankar from comment #6) Up to FreeBSD nakiska.lab.bel 12.0-BETA4 FreeBSD 12.0-BETA4 r340271 GENERIC arm64 The problem persists. I take 'libexec/rtld-elf/aarch64/reloc.c' from current (r339878) and apply the WIP TLS relocations patches. By the way in this patch: int64_t rtld_tlsdesc_handle(struct tls_data *tlsdesc, int flags); must be updated to int64_t rtld_tlsdesc_handle(struct tls_data *tlsdesc); I recompile and install libexec and bingo all is working fine:-) [root@nakiska ~]# php -vµ PHP 7.2.11 (cli) (built: Nov 10 2018 09:54:12) ( ZTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.11, Copyright (c) 1999-2018, by Zend Technologies [root@nakiska ~]# php -m [PHP Modules] bz2 Core ctype date dom filter gd gettext hash iconv imap json ldap libxml mbstring mysqlnd openssl pcre PDO pdo_pgsql pdo_sqlite pgsql posix Reflection session SimpleXML SPL sqlite3 standard tidy tokenizer xml Zend OPcache zip zlib [Zend Modules] Zend OPcache (In reply to hlh from comment #7) ok, cool. Can you add "201763" to the "Blocks" field? From Michal Meloun (mmel@) Final (and much more complex) version of this patch is under review now: https://reviews.freebsd.org/D18417 Michal A commit references this bug: Author: mmel Date: Sat Dec 15 10:38:10 UTC 2018 New revision: 342113 URL: https://svnweb.freebsd.org/changeset/base/342113 Log: Improve R_AARCH64_TLSDESC relocation. The original code did not support dynamically loaded libraries and used suboptimal access to TLS variables. New implementation removes lazy resolving of TLS relocation - due to flaw in TLSDESC design is impossible to switch resolver function at runtime without expensive locking. Due to this, 3 specialized resolvers are implemented: - load time resolver for TLS relocation from libraries loaded with main executable (thus with known TLS offset). - resolver for undefined thread weak symbols. - slower lazy resolver for dynamically loaded libraries with fast path for already resolved symbols. PR: 228892, 232149, 233204, 232311 MFC after: 2 weeks Differential Revision: https://reviews.freebsd.org/D18417 Changes: head/libexec/rtld-elf/aarch64/reloc.c head/libexec/rtld-elf/aarch64/rtld_start.S head/libexec/rtld-elf/amd64/reloc.c head/libexec/rtld-elf/arm/reloc.c head/libexec/rtld-elf/i386/reloc.c head/libexec/rtld-elf/mips/reloc.c head/libexec/rtld-elf/powerpc/reloc.c head/libexec/rtld-elf/powerpc64/reloc.c head/libexec/rtld-elf/riscv/reloc.c head/libexec/rtld-elf/rtld.c head/libexec/rtld-elf/rtld.h head/libexec/rtld-elf/sparc64/reloc.c Since there is already a commit referencing this PR: is here anything left todo? Or can we close the issue because its fixed? (In reply to Torsten Zuehlsdorff from comment #11) Today committed to 12.0-STABLE (r342847 MFC r342113) [root@nakiska libexec]# php -v PHP 7.2.13 (cli) (built: Jan 4 2019 22:38:17) ( ZTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.13, Copyright (c) 1999-2018, by Zend Technologies Problem solved (In reply to hlh from comment #12) > Problem solved Great! :) Therefore i am closing the PR :) |