On Fri, 10 Apr 2015 18:51:29 +0200,
Stuart Henderson wrote:
> 
> Build/install it and check that your system doesn't blow up (keep an old one 
> around with a spare root shell just in case). Run some programs using shared 
> libraries, run the tests in /usr/src/regress/libexec/ld.so.
> -- 
> Sent from a phone, please excuse the formatting.
> 

Ok, I ran make depend and make regress on the hppa boxen
and after that built a kernel, results below:

Output from regress:
$ make depend && make regress
===> elf
===> elf/libbar
===> elf/foo
===> hidden
===> hidden/libaa
===> hidden/libab
===> hidden/test1
===> hidden/test2
===> weak
===> weak/libstrong
===> weak/libweak
===> weak/prog
===> weak/prog2
===> dlsym
===> dlsym/test1
===> dlsym/test1/libaa
===> dlsym/test1/prog1
===> dlsym/test1/prog2
===> dlsym/test2
===> dlsym/test2/libcc
===> dlsym/test2/libbb
===> dlsym/test2/libaa
===> dlsym/test2/prog1
===> dlsym/test2/prog2
===> dlsym/test2/prog3
===> dlsym/test2/prog4
===> dlsym/test2/prog5
===> dlsym/test3
===> dlsym/test3/libee
===> dlsym/test3/libdd
===> dlsym/test3/libcc
===> dlsym/test3/libbb
===> dlsym/test3/libaa
===> dlsym/test3/prog1
===> dlsym/test3/prog2
===> dlsym/test3/prog3
===> dlsym/test3/prog4
===> dlopen
===> dlopen/libaa
===> dlopen/libab
===> dlopen/libac
===> dlopen/prog1
===> dlopen/prog2
===> dlopen/prog3
===> dlopen/prog4
===> dlclose
===> dlclose/test1
===> dlclose/test1/libbb
===> dlclose/test1/libaa
===> dlclose/test1/prog1
===> dlclose/test1/prog2
===> dlclose/test1/prog3
===> dlclose/test2
===> dlclose/test2/libzz
===> dlclose/test2/libcc
===> dlclose/test2/libbb
===> dlclose/test2/libaa
===> dlclose/test2/prog1
===> lazy
===> lazy/libfoo
===> lazy/libbar
===> lazy/prog
===> link-order
===> link-order/libnover
===> link-order/lib10
===> link-order/lib11
===> link-order/lib20
===> link-order/prog
===> link-order/test
===> edgecases
===> edgecases/test1
===> edgecases/test1/libaa_g
===> edgecases/test1/libaa_b
===> edgecases/test1/prog1
===> edgecases/test2
===> edgecases/test2/libaa
===> edgecases/test2/prog1
===> edgecases/test3
===> edgecases/test3/libbb
===> edgecases/test3/libaa
===> edgecases/test3/prog1
===> initfirst
===> initfirst/test1
===> initfirst/test1/libif1
===> initfirst/test1/libif2
===> initfirst/test1/libif3
===> initfirst/test1/libnormal
===> initfirst/test1/prog1
===> initfirst/test2
===> initfirst/test2/libae
===> initfirst/test2/libad
===> initfirst/test2/libac
===> initfirst/test2/libab
===> initfirst/test2/libaa
===> initfirst/test2/prog1
===> initfirst/test2/prog2
===> df_1_noopen
===> randomdata
===> randomdata/libaa
===> randomdata/prog-dynamic
===> randomdata/prog-static
===> randomdata/prog-pie
===> randomdata/ld.so-cookie
===> subst
===> subst/libaa
===> subst/prog1
===> dependencies
===> dependencies/order1
===> dependencies/order1/libbb
===> dependencies/order1/libaa
===> dependencies/order1/prog1
===> elf
===> elf/libbar
===> elf/foo
./elfbug
bar
===> hidden
===> hidden/libaa
===> hidden/libab
===> hidden/test1
./test1
===> hidden/test2
./test2
===> weak
===> weak/libstrong
===> weak/libweak
===> weak/prog
./prog
===> weak/prog2
./prog2
===> dlsym
===> dlsym/test1
===> dlsym/test1/libaa
===> dlsym/test1/prog1
./prog1
===> dlsym/test1/prog2
./prog2
===> dlsym/test2
===> dlsym/test2/libcc
===> dlsym/test2/libbb
===> dlsym/test2/libaa
===> dlsym/test2/prog1
./prog1
===> dlsym/test2/prog2
./prog2
===> dlsym/test2/prog3
./prog3
===> dlsym/test2/prog4
./prog4
===> dlsym/test2/prog5
./prog5
===> dlsym/test3
===> dlsym/test3/libee
===> dlsym/test3/libdd
===> dlsym/test3/libcc
===> dlsym/test3/libbb
===> dlsym/test3/libaa
===> dlsym/test3/prog1
./prog1
===> dlsym/test3/prog2
./prog2
===> dlsym/test3/prog3
./prog3
===> dlsym/test3/prog4
./prog4
===> dlopen
===> dlopen/libaa
===> dlopen/libab
===> dlopen/libac
===> dlopen/prog1
./prog1
main
===> dlopen/prog2
./prog2
main
===> dlopen/prog3
./prog3
===> dlopen/prog4
./prog4
===> dlclose
===> dlclose/test1
===> dlclose/test1/libbb
===> dlclose/test1/libaa
===> dlclose/test1/prog1
./prog1
===> dlclose/test1/prog2
./prog2
./prog2:/usr/src/regress/libexec/ld.so/dlclose/test1/prog2/../libbb/libbb.so.1.0:
 undefined symbol 'bbLazyFun'
lazy binding failed!
*** Signal SIGSEGV in dlclose/test1/prog2 (<bsd.regress.mk>:48 
'run-regress-prog2')
FAILED
*** Error 1 in target 'regress' (ignored)
===> dlclose/test1/prog3
./prog3
*** Signal SIGSEGV in dlclose/test1/prog3 (<bsd.regress.mk>:48 
'run-regress-prog3')
FAILED
*** Error 1 in target 'regress' (ignored)
===> dlclose/test2
===> dlclose/test2/libzz
===> dlclose/test2/libcc
===> dlclose/test2/libbb
===> dlclose/test2/libaa
===> dlclose/test2/prog1
./prog1
===> lazy
===> lazy/libfoo
===> lazy/libbar
===> lazy/prog
./prog
loading: /usr/src/regress/libexec/ld.so/lazy/prog/../libfoo/libfoo.so
loaded: /usr/src/regress/libexec/ld.so/lazy/prog/../libfoo/libfoo.so
looking up foo
found 0x4b15f942 - calling it
loading /usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/libbar.so
loaded: /usr/src/regress/libexec/ld.so/lazy/libfoo/../libbar/libbar.so
bar
done.
===> link-order
===> link-order/libnover
===> link-order/lib10
===> link-order/lib11
===> link-order/lib20
===> link-order/prog
===> link-order/test
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog '%ERROR%'
prog: could not dynamically link libtest
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/libtest.so.1.0 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog 1.0
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/libtest.so.1.0 
/usr/src/regress/libexec/ld.so/link-order/test/../lib11/libtest.so.1.1 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog 1.1
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/libtest.so.1.0 
/usr/src/regress/libexec/ld.so/link-order/test/../lib11/libtest.so.1.1 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog 1.1
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib11/libtest.so.1.1 
/usr/src/regress/libexec/ld.so/link-order/test/../lib20/libtest.so.2.0 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog 2.0
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib11/libtest.so.1.1 
/usr/src/regress/libexec/ld.so/link-order/test/../lib20/libtest.so.2.0 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog 2.0
cp /usr/src/regress/libexec/ld.so/link-order/test/../libnover/libtest.so lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog none
cp /usr/src/regress/libexec/ld.so/link-order/test/../libnover/libtest.so 
/usr/src/regress/libexec/ld.so/link-order/test/../lib10/libtest.so.1.0 lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog none
cp /usr/src/regress/libexec/ld.so/link-order/test/../lib10/libtest.so.1.0 
/usr/src/regress/libexec/ld.so/link-order/test/../libnover/libtest.so lib/
sh /usr/src/regress/libexec/ld.so/link-order/test/test.sh 
/usr/src/regress/libexec/ld.so/link-order/test/../prog/prog none
===> edgecases
===> edgecases/test1
===> edgecases/test1/libaa_g
===> edgecases/test1/libaa_b
===> edgecases/test1/prog1
./prog1 2>&1 | grep "undefined symbol 'libglobal'"
./prog1:./prog1: undefined symbol 'libglobal'
./prog1 >/dev/null 2>&1 || echo "ld.so killed program, good";
ld.so killed program, good
===> edgecases/test2
===> edgecases/test2/libaa
===> edgecases/test2/prog1
./prog1
! ./prog1 2>&1 | grep unresolvedWeakSymbol
===> edgecases/test3
===> edgecases/test3/libbb
===> edgecases/test3/libaa
===> edgecases/test3/prog1
./prog1
===> initfirst
===> initfirst/test1
===> initfirst/test1/libif1
===> initfirst/test1/libif2
===> initfirst/test1/libif3
===> initfirst/test1/libnormal
===> initfirst/test1/prog1
./prog1 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected1 
-
./prog2 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected2 
-
./prog3 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected3 
-
./prog4 | cmp -s /usr/src/regress/libexec/ld.so/initfirst/test1/prog1/expected4 
-
===> initfirst/test2
===> initfirst/test2/libae
===> initfirst/test2/libad
===> initfirst/test2/libac
===> initfirst/test2/libab
===> initfirst/test2/libaa
===> initfirst/test2/prog1
[ "`./prog1`" = "DBECAPpacebd" ]
===> initfirst/test2/prog2
[ "`./prog2`" = "DBECAacebd" ]
===> df_1_noopen
/bin/sh /usr/src/regress/libexec/ld.so/df_1_noopen/test.sh
lib1.so:
lib1.so
passed
passed
passed
passed
passed
passed
passed
passed
lib2.so:
lib2.so
lib1.so
passed
passed
passed
passed
passed
passed
passed
passed
lib3.so:
lib3.so
lib2.so
lib1.so
passed
passed
passed
passed
passed
passed
passed
passed
===> randomdata
===> randomdata/libaa
===> randomdata/prog-dynamic
./prog
===> randomdata/prog-static
./prog
===> randomdata/prog-pie
./prog
===> randomdata/ld.so-cookie
./test
===> subst
===> subst/libaa
===> subst/prog1
mkdir -p "OpenBSD/`uname -r`/`uname -m`"
cp /usr/src/regress/libexec/ld.so/subst/prog1/../libaa/libaa.so* 
"OpenBSD/`uname -r`/`uname -m`/"
./prog1
===> dependencies
===> dependencies/order1
===> dependencies/order1/libbb
===> dependencies/order1/libaa
===> dependencies/order1/prog1
./prog1


After that I started a kernel build with /usr/src mounted via nfs.
While linking the network went down, maybe due to exsessive swaping?

(at first I thought it may have crashed,
however the machine was running happely this morning:)

last line before the network went down:

ld -X -T ../../../../arch/hppa/conf/ld.script -Ttext 80000 --warn-common -nopie 
-S -x -o bsd ${SYSTEM_HEAD} vers.o ${OBJS}
packet_write_wait: Connection to 192.168.1.115: Broken pipe

$ tail -n 1 /tmp/log
ld -X -T ../../../../arch/hppa/conf/ld.script -Ttext 80000 --warn-common -nopie 
-S -x -o bsd ${SYSTEM_HEAD} vers.o ${OBJS}

The kernel:
# ls -l bsd
-rwxr-xr-x  1 root  wsrc  6653936 Apr 13 16:13 bsd*

However there is a runaway make process going stronk.
This of course maybe unrelated and caused by me fatfingering when
figuring out how to do the regress stuff or it may have gone
astray when network went down (building over nfs).

State this morning:
$ top -d 1 -b
load averages:  1.91,  1.31,  1.16    hppa.lemarit.com 08:47:03
31 processes: 2 running, 28 idle, 1 on processor
CPU states: 90.3% user,  0.0% nice,  6.4% system,  0.2% interrupt,  3.2% idle
Memory: Real: 18M/44M act/tot Free: 11M Cache: 11M Swap: 9760K/81M

  PID USERNAME PRI NICE  SIZE   RES STATE     WAIT      TIME    CPU COMMAND
11702 root      56    0 1336K  472K run       -       991:02 51.12% make
17976 root      56    0 3792K 5588K run       -         0:39 37.74% perl
 7226 alf       18    0 4640K 4668K sleep     pause     0:01  1.51% ksh
 3859 root       2    0 3636K 2920K sleep     poll      0:01  1.27% sshd
23407 alf        2    0 3604K 2324K sleep     select    0:00  0.54% sshd
23813 alf       32    0  376K 1152K onproc    -         0:00  0.20% top
 7538 _pflogd    4    0  720K  164K sleep     bpf       0:24  0.00% pflogd
 3208 root       2    0  564K  608K sleep     poll      0:03  0.00% cron
 2683 _ntp       2  -20  912K  888K idle      poll      0:02  0.00% ntpd
 5390 _syslogd   2    0  800K  840K idle      kqread    0:02  0.00% syslogd
19710 _smtpq     2    0 1484K 1896K idle      kqread    0:02  0.00% smtpd
    1 root      10    0  472K  136K sleep     wait      0:01  0.00% init
 6477 root       3    0  708K  720K idle      ttyin     0:01  0.00% ksh
15658 _smtpd     2    0 1456K 1768K idle      kqread    0:01  0.00% smtpd
15857 _smtpd     2    0 1496K 1860K idle      kqread    0:01  0.00% smtpd
 8933 _smtpd     2    0 1520K 1428K idle      kqread    0:01  0.00% smtpd
30789 root      18    0  712K  720K idle      pause     0:00  0.00% sh
31536 _smtpd     2    0 1208K 1612K idle      kqread    0:00  0.00% smtpd

$ uptime
 8:48AM  up 22:53, 2 users, load averages: 2.02, 1.48, 1.23
# fstat -p 11702
USER     CMD          PID   FD MOUNT        INUM MODE       R/W    SZ|DV
root     make       11702 text /usr        54622 -r-xr-xr-x   r   168612
root     make       11702   wd /usr/src    26468 drwxr-xr-x   r    33792
root     make       11702   tr /              13 -rw-------  rw      118
root     make       11702    0 -           -         bad    -
root     make       11702    1 /           25609 -rw-r--r--   w   927517
root     make       11702    2 /           25609 -rw-r--r--   w   927517
# find /usr/src/ -inum 26468 -o -inum 54622 -ls
 54622    8 -rw-rw-r--    1 root     wsrc         2963 Jun  2  2003 
/usr/src/lib/libc/db/btree/extern.h

dmesg pr0n:
[ using 406500 bytes of bsd ELF symbol table ]
Copyright (c) 1982, 1986, 1989, 1991, 1993
        The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2015 OpenBSD. All rights reserved.  http://www.OpenBSD.org

OpenBSD 5.7-current (GENERIC) #474: Wed Apr  8 15:57:29 MDT 2015
    dera...@hppa.openbsd.org:/usr/src/sys/arch/hppa/compile/GENERIC
HP 9000/712/80 (King Gecko) PA-RISC 1.1c
real mem = 67108864 (64MB)
rsvd mem = 524288 (512KB)
avail mem = 57430016 (54MB)
mpath0 at root
scsibus0 at mpath0: 256 targets
mainbus0 at root [flex fff80000]
pdc0 at mainbus0
power0 at mainbus0: DR25
cpu0 at mainbus0 offset ffbe000 irq 31: PCXL L1-A 80MHz, FPU PCXL (CMOS-26B) 
rev 1
cpu0: 128K(32b/l) Icache, 128K(32b/l) wr-back Dcache, 64 coherent TLB, 8 BTLB
mem0 at mainbus0 offset ffbf000: viper rev 0, size 64MB
lasi0 at mainbus0 offset 100000 irq 28: rev 3.0
gsc0 at lasi0
gsckbc0 at gsc0 offset 8100 irq 26
gsckbc1 at gsc0 offset 8000 irq 26
"floppy controller" at gsc0 (type a sv 83 mod 1 hv c0) offset a000 not 
configured
harmony0 at gsc0 offset 4000 irq 13: rev 18
audio0 at harmony0
lpt0 at gsc0 offset 2000 irq 7
com0 at gsc0 offset 5000 irq 5: ns16550a, 16 byte fifo
com0: console
ie0 at gsc0 offset 7000 irq 8: LASI/i82596CA v1.0, address 08:00:09:7d:0a:e2
osiop0 at gsc0 offset 6000 irq 9: NCR53C710 rev 2, 40MHz
scsibus1 at osiop0: 8 targets, initiator 7
osiop0: target 6 now using 8 bit 10 MHz 8 REQ/ACK offset xfers
sd0 at scsibus1 targ 6 lun 0: <HP, C3325A, HP08> SCSI2 0/direct fixed 
serial.HP_C3325A_MY6012N5QQ
sd0: 2048MB, 512 bytes/sector, 4194685 sectors
sti0 at mainbus0 offset 8000000 irq 11: rev 8.04;7, ID 0x2B4DED6D40A00499
sti0: HPA208LC640, 2048x1024 frame buffer, 640x480x8 display
sti0: 8x16 font type 1, 16 bpc, charset 0-255
wsdisplay0 at sti0 mux 1
wsdisplay0: screen 0 added (std, vt100 emulation)
vscsi0 at root
scsibus2 at vscsi0: 256 targets
softraid0 at root
scsibus3 at softraid0: 256 targets
bootpath: 2/0/1.6 class=1 flags=0 hpa=0xf0106000 spa=0x0 io=0x84ec
root on sd0a (7a2ca6b0277c70e1.a) swap on sd0b dump on sd0b
WARNING: clock lost 15363 days -- CHECK AND RESET THE DATE!
ie0: receive descriptors out of sync at 65
ie0: receive descriptors out of sync at 41
ie0: receive descriptors out of sync at 52
ie0: receive descriptors out of sync at 52
ie0: receive descriptors out of sync at 48
ie0: receive descriptors out of sync at 27
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 59
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 2
ie0: receive descriptors out of sync at 16
ie0: receive descriptors out of sync at 55
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 53
ie0: receive descriptors out of sync at 54
ie0: receive descriptors out of sync at 64
ie0: receive descriptors out of sync at 7
ie0: receive descriptors out of sync at 59
ie0: receive descriptors out of sync at 47
ie0: receive descriptors out of sync at 13
ie0: receive descriptors out of sync at 61
ie0: receive descriptors out of sync at 69
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 42
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 53
ie0: TDR detected an open 1 clock away
ie0: receive descriptors out of sync at 25
ie0: receive descriptors out of sync at 71
ie0: receive descriptors out of sync at 55
ie0: receive descriptors out of sync at 53
ie0: receive descriptors out of sync at 63
ie0: receive descriptors out of sync at 28
ie0: TDR detected an open 1 clock away
ie0: receive descriptors out of sync at 12
ie0: receive descriptors out of sync at 35
ie0: receive descriptors out of sync at 53
ie0: receive descriptors out of sync at 17
ie0: receive descriptors out of sync at 56
ie0: receive descriptors out of sync at 21
ie0: receive descriptors out of sync at 4
ie0: receive descriptors out of sync at 21
ie0: receive descriptors out of sync at 45
ie0: receive descriptors out of sync at 40
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 74
ie0: receive descriptors out of sync at 69
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 60
ie0: receive descriptors out of sync at 30
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 8
ie0: receive descriptors out of sync at 32
ie0: receive descriptors out of sync at 3
ie0: receive descriptors out of sync at 26
ie0: receive descriptors out of sync at 39
ie0: TDR detected an open 1 clock away
ie0: receive descriptors out of sync at 27
ie0: receive descriptors out of sync at 6
ie0: receive descriptors out of sync at 20
ie0: receive descriptors out of sync at 79
ie0: receive descriptors out of sync at 1
ie0: receive descriptors out of sync at 20
ie0: receive descriptors out of sync at 48
ie0: receive descriptors out of sync at 13
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 41
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 71
ie0: receive descriptors out of sync at 21
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 11
ie0: TDR detected an open 0 clocks away
ie0: receive descriptors out of sync at 53
ie0: TDR detected an open 1 clock away

Reply via email to