Bug #77284 [Asn->Ver]: base64

From: Date: Fri, 14 Dec 2018 13:00:24 +0000
Subject: Bug #77284 [Asn->Ver]: base64
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-218449@lists.php.net to get a copy of this message
Edit report at https://bugs.php.net/bug.php?id=77284&edit=1

 ID:                 77284
 Updated by:         cmb@php.net
 Reported by:        anubas at hotmail dot com
 Summary:            base64
-Status:             Assigned
+Status:             Verified
 Type:               Bug
 Package:            *URL Functions
 Operating System:   FreeBSD 11.2-RELEASE-p5
 PHP Version:        7.3.0
 Assigned To:        laruence
 Block user comment: N
 Private report:     N

 New Comment:

I can reproduce this issue on an AMD 64 supporting SSSE3, but not
AVX2, running a Vagrant bento/freebsd-11.2[1].
resolve_base64_encode() returns php_base64_encode_ssse3()[2], but
setting a breakpoint for this function is somehow ignored.

[1] <https://app.vagrantup.com/bento/boxes/freebsd-11.2>
[2] <https://github.com/php/php-src/blob/php-7.3.0/ext/standard/base64.c#L431>


Previous Comments:
------------------------------------------------------------------------
[2018-12-12 09:52:05] sjon at hortensius dot net

This can be reproduced pretty quickly in a qemu-vm - I downloaded http://ftp.nl.freebsd.org/releases/VM-IMAGES/11.2-RELEASE/amd64/Latest/FreeBSD-11.2-RELEASE-amd64.qcow2.xz,
uncompressed and logged in with root and ran:

# portsnap fetch extract && cd /usr/ports/lang/php73 && make install
 (select debug build, accept defaults for the rest

This will get you a debug php73 build which shows the same behavior

------------------------------------------------------------------------
[2018-12-11 22:12:28] nikic@php.net

Also bug #77279 looks very related. In both cases we have a SIMD optimized function with FreeBSD as
the operating system. Likely the same root cause.

------------------------------------------------------------------------
[2018-12-11 22:11:21] nikic@php.net

Thanks, that should put you on the SSSE3 implementation. I just tried to force it locally, and
it's working fine for me.

Not sure what could be the issue here, maybe laruence has an idea?

------------------------------------------------------------------------
[2018-12-11 21:53:41] anubas at hotmail dot com

I pulled the following out of the system dmesg output:

CPU: Intel(R) Xeon(R) CPU E5-2630 v2 @ 2.60GHz (2600.00-MHz K8-class CPU)
  Origin="GenuineIntel"  Id=0x306e4  Family=0x6  Model=0x3e  Stepping=4
 
Features=0xfa3fbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,DTS,MMX,FXSR,SSE,SSE2,SS>
 
Features2=0xffba2203<SSE3,PCLMULQDQ,SSSE3,CX16,PCID,SSE4.1,SSE4.2,x2APIC,POPCNT,TSCDLT,AESNI,XSAVE,OSXSAVE,AVX,F16C,RDRAND,HV>
  AMD Features=0x28100800<SYSCALL,NX,RDTSCP,LM>
  AMD Features2=0x1<LAHF>
  Structured Extended Features=0x283<FSGSBASE,TSCADJ,SMEP,ERMS>
  TSC: P-state invariant

------------------------------------------------------------------------
[2018-12-11 21:41:20] nikic@php.net

Base64 encoding has SIMD based implementations in 7.3, so this issue might be architecture
dependent. Can you please tell me which SIMD extensions your CPU supports? In particular AVX2 and
SSSE3 support would be relevant.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=77284


--
Edit this bug report at https://bugs.php.net/bug.php?id=77284&edit=1


Thread (13 messages)

« previous php.bugs (#218449) next »