firefox FTBFS on s390x

Bug #1878292 reported by Olivier Tilloy on 2020-05-12
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
firefox (Ubuntu)
High
Olivier Tilloy

Bug Description

Builds hang when trying to compile the third-party sqlite3 copy, during 7+ hours, before being killed. See e.g. https://launchpad.net/ubuntu/+source/firefox/76.0.1+build1-0ubuntu1/+build/19276095:

436:55.58 make[6]: *** [/<<BUILDDIR>>/firefox-76.0.1+build1/config/rules.mk:673: sqlite3.o] Killed
436:55.59 make[6]: Leaving directory '/<<BUILDDIR>>/firefox-76.0.1+build1/obj-s390x-linux-gnu/third_party/sqlite3/src'
436:55.59 make[5]: *** [/<<BUILDDIR>>/firefox-76.0.1+build1/config/recurse.mk:74: third_party/sqlite3/src/target-objects] Error 2

Olivier Tilloy (osomon) wrote :

This is the full compiler invokation used to build the sqlite3 copy:

/usr/bin/clang-10 -std=gnu99 -o sqlite3.o -c -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fstack-protector-strong -DNDEBUG=1 -DTRIMMED=1 -DSQLITE_SECUR
E_DELETE=1 -DSQLITE_THREADSAFE=1 -DSQLITE_CORE=1 -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_UNLOCK_NOTIFY=1 -DSQLITE_ENABLE_DBSTAT_VTAB=1 -DSQLITE_DEFAULT_PAGE_SIZE=32768 -DSQLITE_MAX_DEFAULT_PAGE_SIZE=32768 -DSQLITE_OMIT_DEPRECAT
ED -DSQLITE_OMIT_BUILTIN_TEST -DSQLITE_OMIT_DECLTYPE -DSQLITE_TEMP_STORE=2 '-DSQLITE_TEMP_FILE_PREFIX="mz_etilqs_"' -I/home/ubuntu/firefox.focal/third_party/sqlite3/src -I/home/ubuntu/firefox.focal/obj-s390x-linux-gnu/third_pa
rty/sqlite3/src -I/home/ubuntu/firefox.focal/obj-s390x-linux-gnu/dist/include -I/home/ubuntu/firefox.focal/obj-s390x-linux-gnu/dist/include/nspr -I/home/ubuntu/firefox.focal/obj-s390x-linux-gnu/dist/include/nss -fPIC -include
/home/ubuntu/firefox.focal/obj-s390x-linux-gnu/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -fno-strict-aliasing -ffunction-sections -fdata-sections -fno-math-errno -pthread -fPIC -pipe -g -O2 -fomit-frame-pointer -fun
wind-tables -Qunused-arguments -Wall -Wbitfield-enum-conversion -Wempty-body -Wignored-qualifiers -Wpointer-arith -Wshadow-field-in-constructor-modified -Wsign-compare -Wtype-limits -Wunreachable-code -Wunreachable-code-return
 -Wclass-varargs -Wfloat-overflow-conversion -Wfloat-zero-conversion -Wloop-analysis -Wstring-conversion -Wtautological-overlap-compare -Wtautological-unsigned-enum-zero-compare -Wtautological-unsigned-zero-compare -Wno-error=
tautological-type-limit-compare -Wno-error=deprecated-declarations -Wno-error=array-bounds -Wno-error=backend-plugin -Wno-error=return-std-move -Wno-error=atomic-alignment -Wno-error=deprecated-copy -Wformat -Wformat-security
-Wno-gnu-zero-variadic-macro-arguments -Wno-sign-compare -Wno-type-limits -fexperimental-new-pass-manager -MD -MP -MF .deps/sqlite3.o.pp /home/ubuntu/firefox.focal/third_party/sqlite3/src/sqlite3.c

I can reliably reproduce the indefinite hang on s390x. If I replace the optimization flag "-O2" by "-O0", the build succeeds almost instantly. "-O1" seems to hang too, so it looks like clang on s390x has trouble optimizing the sqlite3 code.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package firefox - 76.0.1+build1-0ubuntu2

---------------
firefox (76.0.1+build1-0ubuntu2) groovy; urgency=medium

  * Update apparmor profile to allow lsb_release to run with more recent
    versions of Python 3 (LP: #1861408)
    - debian/usr.bin.firefox.apparmor.14.10
  * Work around clang hanging forever when trying to optimize the build of the
    embedded copy of sqlite3 (LP: #1878292)
    - debian/patches/s390x-workaround-sqlite3-clang-optimization-hang.patch

 -- Olivier Tilloy <email address hidden> Tue, 12 May 2020 23:11:11 +0200

Changed in firefox (Ubuntu):
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers