Package libnss3_3.60-1_ppc64.deb requires Power-7 hardware
For all who still want to run Debian 64bit on a G5, the newest
libnss3-Package breaks some prominent applications like firefox or
thunderbird on that machine.
The reason is that in one makefile the compiler options "-mcrypto" and
"-mvsx" were turned. Hence, there are Power-7 instructions now in
libfreeblpriv3.so:
carsten@Huilin-Hus-Computer:~/Sources/libnss3/nss-3.60$ for i in $(find
-type f -name \*.o); do if { objdump --disassemble ${i} | grep lfiwzx;
}; then echo ${i}; fi; done
1c8: 7c 00 56 ee lfiwzx f0,0,r10
./nss/lib/freebl/OBJS/Linux_SINGLE_SHLIB/gcm.o
444: 7c 00 56 ee lfiwzx f0,0,r10
./nss/lib/freebl/OBJS/Linux_SINGLE_SHLIB/rijndael.o
With the newest libnss3 package updated firefox, thunderbird or also
linphone will die very quickly with "SIGILL". I've attached a patch that
disables the Power-7 instructions in that package (that's why I'm able
to write this mail at all, thunderbird is also my mail program).
Does anybody know why the two compiler options were turned on? Is that
something that was already decided upstream in the original project?
Regards,
Carsten Jacobi
--- ./nss/lib/freebl/Makefile.orig 2020-12-11 16:32:40.000000000 +0100
+++ ./nss/lib/freebl/Makefile 2021-01-15 23:04:21.000000000 +0100
@@ -757,10 +757,10 @@
ifeq ($(CPU_ARCH),ppc)
ifndef NSS_DISABLE_ALTIVEC
-$(OBJDIR)/$(PROG_PREFIX)gcm-ppc$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)gcm$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)rijndael$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx
-$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -mcrypto -maltivec -mvsx \
+$(OBJDIR)/$(PROG_PREFIX)gcm-ppc$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)gcm$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)rijndael$(OBJ_SUFFIX): CFLAGS += -maltivec
+$(OBJDIR)/$(PROG_PREFIX)sha512$(OBJ_SUFFIX): CFLAGS += -maltivec \
-funroll-loops -fpeel-loops
endif
endif
Reply to: