stable/11 regression: SIGSYS in the /bin/sh

Eugene Grosbein eugen at grosbein.net
Fri Jul 28 02:48:27 UTC 2017


On 27.07.2017 23:28, Konstantin Belousov wrote:

> Take your /bin/sh, libraries and rtld to some other machine and try to
> catch where the pipe(2) call come from.  I do not see any other way
> forward, assuming your build env is not contaminated somehow.
> 
> I did the following on the today stable/11:
> pooma% ktrace -if /tmp/ktrace.out sh -c 'jot 100 | grep 1 | wc -l'
>       20
> pooma% kdump -f /tmp/ktrace.out | grep pipe
>   1493 sh       CALL  pipe2(0x7fffffffe390,0)
>   1493 sh       RET   pipe2 0
>   1493 sh       CALL  pipe2(0x7fffffffe390,0)
>   1493 sh       RET   pipe2 0

This is NanoBSD build, so I have full world in the /usr/obj/nanobsd.pppoe/_.w on my buildbox
that is FreeBSD 11/amd64 r321459 too, but does have COMPAT_FREEBSD10 in its kernel.

So, I repeated your test and got same results:

# mount -t devfs devfs /usr/obj/nanobsd.pppoe/_.w/dev
# chroot /usr/obj/nanobsd.pppoe/_.w ktrace -if /tmp/ktrace.out sh -c 'jot 100 | grep 1 | wc -l'
      20
# kdump -f /usr/obj/nanobsd.pppoe/_.w/tmp/ktrace.out | grep pipe
 98399 sh       CALL  pipe2(0x7fffffffe9a0,0)
 98399 sh       RET   pipe2 0
 98399 sh       CALL  pipe2(0x7fffffffe9a0,0)
 98399 sh       RET   pipe2 0

I could try to use dichotomy but this would take lots of time.



More information about the freebsd-stable mailing list