[debian-mysql] Bug#1007216: mariadb-10.6: FTBFS on ppc64: unrecognized opcode tbegin/tabort/tend

John Paul Adrian Glaubitz glaubitz at physik.fu-berlin.de
Sun Mar 13 19:47:36 GMT 2022


Hello Otto!

On 3/13/22 20:36, Otto Kekäläinen wrote:
> CMakeFiles/mbstream.dir/xbstream.cc.o.d -o
> CMakeFiles/mbstream.dir/xbstream.cc.o -c
> /<<PKGBUILDDIR>>/extra/mariabackup/xbstream.cc
> /tmp/ccwobTGg.s: Assembler messages:
> /tmp/ccwobTGg.s:48: Error: unrecognized opcode: `tbegin.'
> /tmp/ccwobTGg.s:106: Error: unrecognized opcode: `tabort.'
> /tmp/ccwobTGg.s:151: Error: unrecognized opcode: `tend.'
> 
> Full log at https://buildd.debian.org/status/fetch.php?pkg=mariadb-10.6&arch=ppc64&ver=1%3A10.6.7-3&stamp=1647018395&raw=0
> 
> Builds of powerpc and ppc64el work, this failure is only on ppc64.
> This arch failed previously on Debian#1006527 but it was fixed on the
> latest upload, and thus this second failure got uncovered.

Looks like unconditional use of POWER8 transactional instructions [1].

The code should check for the availability of POWER8 or _CALL_ELF 2 before
trying to use POWER8 instructions:

(sid_ppc64el-dchroot)glaubitz at plummer:~$ echo | gcc -E -dM -|grep POWER
#define __POWER8_VECTOR__ 1
(sid_ppc64el-dchroot)glaubitz at plummer:~$ 
(sid_ppc64el-dchroot)glaubitz at plummer:~$ echo | gcc -E -dM -|grep ELF
#define __ELF__ 1
#define _CALL_ELF 2
(sid_ppc64el-dchroot)glaubitz at plummer:~$

Adrian

> [1] https://www.ibm.com/docs/en/aix/7.2?topic=concepts-aix-transactional-memory-programming

-- 
 .''`.  John Paul Adrian Glaubitz
: :' :  Debian Developer - glaubitz at debian.org
`. `'   Freie Universitaet Berlin - glaubitz at physik.fu-berlin.de
  `-    GPG: 62FF 8A75 84E0 2956 9546  0006 7426 3B37 F5B5 F913



More information about the pkg-mysql-maint mailing list