Subject: bug#42418: a test failure and a core file on Solaris 10 and Oracle/Fujitsu SPARC M-class servers

From: Dennis Clarke <[email-masked]>
Date: Sat, 18 Jul 2020 16:40:55 +0000

I will attach the usual log files as well as a full dump of the output
from configure and the environment.  This is a fully contract supported
Oracle/Fujitsu M-class server running Solaris 10 and the compiler tools
were the Oracle Studio 12.6 tools where I used C99 strict :

gmake[6]: Entering directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
PASS: test-accept
PASS: test-set-mode-acl.sh
PASS: test-set-mode-acl-1.sh
PASS: test-set-mode-acl-2.sh
PASS: test-copy-acl.sh
PASS: test-copy-acl-1.sh
PASS: test-copy-acl-2.sh
PASS: test-alignof
PASS: test-alloca-opt
PASS: test-arpa_inet
PASS: test-binary-io.sh
PASS: test-bind
PASS: test-btowc1.sh
PASS: test-btowc2.sh
PASS: test-c-ctype
PASS: test-c-strcase.sh
PASS: test-canonicalize-lgpl
PASS: test-chdir
PASS: test-cloexec
PASS: test-close
PASS: test-connect
PASS: test-ctype
PASS: dfa-invalid-char-class.sh
PASS: dfa-match.sh
PASS: test-dirent
PASS: test-dup2
PASS: test-environ
PASS: test-errno
PASS: test-fcntl-h
PASS: test-fcntl
PASS: test-fdopen
PASS: test-fflush
PASS: test-fflush2.sh
PASS: test-fgetc
PASS: test-file-has-acl.sh
PASS: test-file-has-acl-1.sh
PASS: test-file-has-acl-2.sh
PASS: test-fpending.sh
PASS: test-fpurge
PASS: test-fputc
PASS: test-fread
PASS: test-freading
PASS: test-fseek.sh
PASS: test-fseek2.sh
PASS: test-fseeko.sh
PASS: test-fseeko2.sh
PASS: test-fseeko3.sh
PASS: test-fseeko4.sh
PASS: test-fstat
PASS: test-ftell.sh
PASS: test-ftell2.sh
PASS: test-ftell3
PASS: test-ftello.sh
PASS: test-ftello2.sh
PASS: test-ftello3
PASS: test-ftello4.sh
PASS: test-ftruncate.sh
PASS: test-fwrite
PASS: test-fwriting
PASS: test-getcwd-lgpl
PASS: test-getdelim
PASS: test-getdtablesize
PASS: test-getopt-gnu
PASS: test-getopt-posix
PASS: test-getprogname
PASS: test-gettimeofday
PASS: test-hard-locale
PASS: test-ignore-value
PASS: test-inet_pton
PASS: test-intprops
PASS: test-inttypes
PASS: test-ioctl
PASS: test-isblank
PASS: test-langinfo
PASS: test-limits-h
PASS: test-link
PASS: test-listen
PASS: test-locale
PASS: test-localeconv
PASS: test-localename
PASS: test-lseek.sh
PASS: test-lstat
PASS: test-malloca
PASS: test-mbrtowc1.sh
PASS: test-mbrtowc2.sh
PASS: test-mbrtowc3.sh
PASS: test-mbrtowc4.sh
PASS: test-mbrtowc5.sh
SKIP: test-mbrtowc-w32-1.sh
SKIP: test-mbrtowc-w32-2.sh
SKIP: test-mbrtowc-w32-3.sh
SKIP: test-mbrtowc-w32-4.sh
SKIP: test-mbrtowc-w32-5.sh
SKIP: test-mbrtowc-w32-6.sh
SKIP: test-mbrtowc-w32-7.sh
PASS: test-mbsinit.sh
PASS: test-memchr
PASS: test-memrchr
PASS: test-mkdir
PASS: test-nanosleep
PASS: test-netinet_in
PASS: test-nl_langinfo.sh
../build-aux/test-driver: line 107: 12847 Segmentation Fault      (core
dumped) "$@" > $log_file 2>&1
FAIL: test-nl_langinfo-mt
PASS: test-open
PASS: test-pathmax
PASS: test-perror.sh
PASS: test-perror2
PASS: test-pipe
PASS: test-pthread
PASS: test-pthread-thread
PASS: test-pthread_sigmask1
PASS: test-pthread_sigmask2
PASS: test-quotearg-simple
PASS: test-raise
PASS: test-read-file
PASS: test-readlink
PASS: test-regex
PASS: test-rename
PASS: test-rmdir
PASS: test-sched
PASS: test-select
PASS: test-select-in.sh
PASS: test-select-out.sh
PASS: test-setenv
PASS: test-setlocale_null
PASS: test-setlocale_null-mt-one
PASS: test-setlocale_null-mt-all
PASS: test-setlocale1.sh
PASS: test-setlocale2.sh
PASS: test-setsockopt
PASS: test-sigaction
PASS: test-signal-h
PASS: test-sigprocmask
PASS: test-sleep
PASS: test-sockets
PASS: test-stat
PASS: test-stat-time
SKIP: test-stdalign
PASS: test-stdbool
PASS: test-stddef
PASS: test-stdint
PASS: test-stdio
PASS: test-stdlib
PASS: test-strerror
PASS: test-strerror_r
PASS: test-string
PASS: test-strverscmp
PASS: test-symlink
PASS: test-sys_ioctl
PASS: test-sys_select
PASS: test-sys_socket
PASS: test-sys_stat
PASS: test-sys_time
PASS: test-sys_types
PASS: test-sys_uio
PASS: test-init.sh
PASS: test-thread_self
PASS: test-thread_create
PASS: test-time
PASS: test-unistd
PASS: test-unsetenv
PASS: test-update-copyright.sh
SKIP: test-vc-list-files-git.sh
SKIP: test-vc-list-files-cvs.sh
PASS: test-verify
PASS: test-verify.sh
PASS: test-version-etc.sh
PASS: test-wchar
PASS: test-wcrtomb.sh
SKIP: test-wcrtomb-w32-1.sh
SKIP: test-wcrtomb-w32-2.sh
SKIP: test-wcrtomb-w32-3.sh
SKIP: test-wcrtomb-w32-4.sh
SKIP: test-wcrtomb-w32-5.sh
SKIP: test-wcrtomb-w32-6.sh
SKIP: test-wcrtomb-w32-7.sh
PASS: test-wctype-h
PASS: test-xalloc-die.sh
============================================================================
Testsuite summary for GNU sed 4.8
============================================================================
# TOTAL: 178
# PASS:  160
# SKIP:  17
# XFAIL: 0
# FAIL:  1
# XPASS: 0
# ERROR: 0
============================================================================
See gnulib-tests/test-suite.log
Please report to [email-masked]
============================================================================
gmake[6]: *** [Makefile:3978: test-suite.log] Error 1
gmake[6]: Leaving directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
gmake[5]: *** [Makefile:4086: check-TESTS] Error 2
gmake[5]: Leaving directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
gmake[4]: *** [Makefile:5424: check-am] Error 2
gmake[4]: Leaving directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
gmake[3]: *** [Makefile:3870: check-recursive] Error 1
gmake[3]: Leaving directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
gmake[2]: *** [Makefile:5426: check] Error 2
gmake[2]: Leaving directory
'/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001/gnulib-tests'
gmake[1]: *** [Makefile:3105: check-recursive] Error 1
gmake[1]: Leaving directory '/opt/bw/build/sed-4.8_sunos5.10_sparcv9.001'
gmake: *** [Makefile:3577: check] Error 2

The core file was a surprise but I think I have seen it all before :

t@3 (l@3) terminated by signal SEGV (no mapping at the fault address)
0xffffffff7e9c5430: lmalloc+0x01cc:     ldx      [%i3], %l7
Current function is main
   88     ASSERT (strlen (nl_langinfo (MON_6)) > 0);
(dbx) where

current thread: t@3
  [1] lmalloc(0x1c00, 0xffffffff7eb4bcc0, 0x1980, 0xffffff7eb00900,
0x2000, 0xffffffff7e9c543c), at 0xffffffff7e9c5430
  [2] tsdalloc(0xffffffff7d100000, 0xc, 0x0, 0xffffffff7d100048, 0x3,
0xffffffff7e9cf840), at 0xffffffff7e979e68
  [3] __nl_langinfo_std(0x1001051f0, 0x30, 0x1b5bc8, 0xffffffff7e9d03d4,
0xffffffff7eb3e000, 0x2400), at 0xffffffff7e988454
=>[4] main(argc = 48, argv = (nil)), line 88 in "test-nl_langinfo.c"
  [5] main(argc = 0, argv = (nil)), line 66 in "test-nl_langinfo.c"
(dbx) print MON_6
dbx: warning: cannot recreate macro information for test-nl_langinfo.c
-- unrecognized compiler : /opt/developerstudio12.6/bin/c99
dbx: "MON_6" is not defined in the scope
`test-nl_langinfo`test-nl_langinfo.c`main`
dbx: see `help scope' for details
(dbx) regs
current thread: t@3
current frame:  [4]
g0-g1    0x0000000000000000 0x0000000000001800
g2-g3    0x0000000000000000 0x0000000000000000
g4-g5    0xfffffffffffffc00 0x0000000000000001
g6-g7    0x0000000000000000 0xffffffff7e401200
o0-o1    0x00000001001051f0 0x0000000000000030
o2-o3    0x00000000001b5bc8 0xffffffff7e9d03d4
o4-o5    0xffffffff7eb3e000 0x0000000000002400
o6-o7    0xffffffff7d5fb591 0x0000000100001ea0
l0-l1    0x0000000000000030 0x00000000000027d8
l2-l3    0xffffffffffffd858 0x00000000ffffd858
l4-l5    0x0000000000000000 0x0000000000000000
l6-l7    0x0000000000000001 0x0000000001000000
i0-i1    0x0000000000000030 0x0000000000000001
i2-i3    0xffffffff7eb4a300 0x0000000000000010
i4-i5    0xffffffff7eb4bf98 0xffffffff7e401200
i6-i7    0xffffffff7d5fb681 0x0000000100001204
y        0x0000000000000000
ccr      0x0000000000000080
pc       0x0000000100001ea0:main+0x1210    nop
npc      0xffffffff7e9c5434:lmalloc+0x1d0    be,pn    %xcc,lmalloc+0x1e0
       ! 0xffffffff7e9c5444
(dbx) quit

That may not be helpful but seems reasonable to include.

-- 
Dennis Clarke
RISC-V/SPARC/PPC/ARM/CISC
UNIX and Linux spoken
GreyBeard and suspenders optional