On Fri, Sep 28, 2012 at 11:38 AM, Glenn Fowler <g...@research.att.com> wrote:
>
> On Fri, 28 Sep 2012 10:21:49 +0200 Cedric Blancher wrote:
>> On 28 September 2012 07:44, Glenn Fowler <g...@research.att.com> wrote:
>> >
>> > { INIT ast-ksh } 2012-09-27 alphas posted to
>> >         www.research.att.com/sw/download/alpha/
>
>> We experience a lot of failures with ast-ksh 2012-09-27 on Suse 12.2
>> Linux and latest Fedora:
>
>> test arith begins at 2012-09-28+08:51:50
>>         arith.sh[420]: compound var arithmetic failed
>>         arith.sh[421]: compound var arithmetic failed
>>         arith.sh[422]: compound var arithmetic failed
>>         arith.sh[423]: compound var arithmetic failed
>>         arith.sh[424]: compound var arithmetic failed
>>         arith.sh[425]: compound var arithmetic failed
>>         arith.sh[426]: compound var arithmetic failed
>> test arith failed at 2012-09-28+08:51:50 with exit code 1 [ 201 tests 1 
>> error ]
>> test attributes begins at 2012-09-28+09:19:32
>>         attributes.sh[128]: attributes not cleared for script execution
>>         attributes.sh[133]: typeset -L should not be inherited
>> test attributes failed at 2012-09-28+09:19:34 with exit code 1 [ 110
>> tests 1 error ]
>> test attributes(shcomp) begins at 2012-09-28+09:19:34
>>         shcomp-attributes.ksh[128]: attributes not cleared for script 
>> execution
>>         shcomp-attributes.ksh[133]: typeset -L should not be inherited
>> test attributes(shcomp) failed at 2012-09-28+09:19:36 with exit code 2
>> [ 110 tests 2 errors ]
>> test basic begins at 2012-09-28+09:19:36
>>         basic.sh[165]: script not working
>>         basic.sh[171]: output file pointer not shared correctly
>>         basic.sh[198]: builtin replaces standard input pipe
>>         basic.sh[204]: $0 not correct for . script
>>         basic.sh[211]: nested scripts failed
>>         basic.sh[215]: scripts in subshells fail
>>         basic.sh[350]: piping into script fails
>>         basic.sh[359]: script pipe to shell fails
>> blabla
>
>> We've traced this down to the nonconforming glibc/Linux implementation
>> of posix_spawn() - disabling it cures the problem on Linux. I
>> crosschecked with the AIX build - it uses posix_spawn() the same way
>> but without triggering any failures.
>> I think this is a follow-up to
>> http://marc.info/?l=ast-developers&m=134785274012526&w=2 - I can't
>> agree with the assertion of Redhat's Michal Hlavinka that glibc
>> posix_spawn() is right, because the current behaviour is IMO useless
>> for use in a shell (hence the failures in the testsuite), and think a
>> fix in glibc is still required.
>
> to recap:
>
>         grep _lib_posix_spawn arch/*/src/lib/libast/FEATURE/lib
>
> there are 3 possible results
> (1) not there => posix_spawn() unusable
> (2) #define _lib_posix_spawn 2 => works with no workarounds
> (3) #define _lib_posix_spawn 1 => works but posix_spawn() on an executable
>     file that would fail with ENOEXEC via execve() creates a process
>     that exits with status 127
>
> our sol10.* systems have _lib_posix_spawn 1 and they work
> so something else is going on

Solaris 11, Opensolaris, Openindiana/Illumos (Solaris clone) and AIX
all produce _lib_posix_spawn==2. I think there are patches for Solaris
10 which backport the posix_spawn() fixes from Solaris 11 to Solaris
10 because behaviours such as _lib_posix_spawn==1 is not conforming
and causes the the Single Unix Standard and VS* test suites to fail.

Irek
_______________________________________________
ast-developers mailing list
ast-developers@research.att.com
https://mailman.research.att.com/mailman/listinfo/ast-developers

Reply via email to