FS#59387 - [make] segfaults in glob tests

Attached to Project: Arch Linux
Opened by Andreas Baumann (andreas_baumann) - Thursday, 19 July 2018, 07:35 GMT
Last edited by Allan McRae (Allan) - Sunday, 04 November 2018, 01:43 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To Lukas Fleischer (lfleischer)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

functions/wildcard ...................................... Error running /build/make/src/make-4.2.1/tests/../make (expected 0; got 139): /build/make/src/make-4.2.1/tests/../make -f work/functions/wildcard.mk.1

Caught signal 11!
Error running /build/make/src/make-4.2.1/tests/../make (expected 0; got 139): /build/make/src/make-4.2.1/tests/../make -f work/functions/wildcard.mk.2

Caught signal 11!
FAILED (4/6 passed)

This could be https://sourceware.org/bugzilla/show_bug.cgi?id=22183

Additional info:
* package version(s): 4.2.1-2 (with patch for alloca linking applied), see  FS#58674 
* config and/or log files etc.


Steps to reproduce:

append to PKGBUILD:

source+=('FS55127.patch' 'FS58674.patch')
md5sums+=('8efba0d7ff90f5394edda0f83259af05' '95fcc032a728e134f620a402e6922389')

eval "$(
declare -f prepare | \
sed '
/^\s*cd\s/a patch -p1 -i ${srcdir}/FS55127.patch
/^\s*cd\s/a patch -p1 -i ${srcdir}/FS58674.patch

'
)"

staging-x86_64-build


This task depends upon

Closed by  Allan McRae (Allan)
Sunday, 04 November 2018, 01:43 GMT
Reason for closing:  Fixed
Additional comments about closing:  make-4.2.1-3
Comment by Andreas Baumann (andreas_baumann) - Thursday, 19 July 2018, 08:43 GMT
stack trace shows:

Core was generated by `/data/INSTALL/make/src/make-4.2.1/tests/../make -f work/functions/wildcard.mk.2'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x00007ffeb0af5060 in ?? ()
(gdb) bt
#0 0x00007ffeb0af5060 in ?? ()
#1 0x00007f3b1490a64c in glob_in_dir () from /usr/lib/libc.so.6
#2 0x00007f3b1490b328 in glob@@GLIBC_2.27 () from /usr/lib/libc.so.6
#3 0x0000560dd44b711c in parse_file_seq ()
#4 0x0000560dd44a8fa8 in func_wildcard ()
#5 0x0000560dd44ab026 in handle_function ()
#6 0x0000560dd44a48c6 in variable_expand_string ()
#7 0x0000560dd44a530f in variable_expand_for_file ()
#8 0x0000560dd44a5363 in allocated_variable_expand_for_file ()
#9 0x0000560dd44afc4b in new_job ()
#10 0x0000560dd44bbf36 in update_file ()
#11 0x0000560dd44bc82f in update_goal_chain ()
#12 0x0000560dd44a0739 in main ()

The patch mentioned above is for glibc glob/glob64, not for make.
I used an older local fix to make: 193f1e81edd6b1b56b0eb0ff8aa4b41c7b4257b4
from make seems to fix the segfaults,

see also downstream:
https://git.archlinux32.org/archlinux32/packages/commit/776547f328f50fb9a8a3cc996e238a7dc1573f36

Tested on both i686 and x86_64.

Loading...