On Mon, Sep 12, 2011 at 09:03:53AM -0700, Bart Schaefer wrote: > to verify which test is causing the segmentation fault? I suspect it's > the very last test with "print -lO ... | while read ..." but I'd like > to be sure. (OTOH it may not be possible to reproduce the fault with > verbose output, but it's worth a try.) Test successful. ZTST_test: looking for new test ZTST_test: examining line: ZTST_test: examining line: print -lO $'a' $'a\0' $'a\0b' $'a\0b\0' $'a\0b\0a' $'a\0b\0b' $'a\0c' | ZTST_getchunk: read code chunk: print -lO $'a' $'a\0' $'a\0b' $'a\0b\0' $'a\0b\0a' $'a\0b\0b' $'a\0c' | while read -r line; do for (( i = 1; i <= ${#line}; i++ )); do foo=$line[i] printf "%02x" $(( #foo )) done print done ZTST_test: examining line: >610063 ZTST_getredir: read redir for '>': 610063 6100620062 6100620061 61006200 610062 6100 61 ZTST_test: examining line: Running test: sorting with embedded nulls ZTST_test: expecting status: 0 Input: /usr/src/tmp/zsh.ztst.in.2764, output: /usr/src/tmp/zsh.ztst.out.2764, error: /usr/src/tmp/zsh.ztst.terr.2764 ************************************** 0 successful test scripts, 1 failure, 0 skipped ************************************** make[1]: *** [check] Error 1 make[1]: Leaving directory `/usr/src/RPM/BUILD/zsh-4.3.12/Test' make: *** [check] Error 2 > I further suspect the signal is arriving during foo=$line[i] or some > other part of the inner loop where no actual command is being run, but > list_pipe remains true because of the outer loop. I think there's a race condition somewhere. I've managed to reproduce this error on an average loaded system with decent swap usage. Fail chance is about 15-20%% on my system and >80% on build server. -- Regards, -- Sir Raorn. --- http://thousandsofhate.blogspot.com/
Attachment:
signature.asc
Description: Digital signature