snapshot now == 1.5.7 soon, please try

Philippe Torche philippe.torche@jle.ch
Wed Jan 21 13:48:00 GMT 2004


Christopher Faylor wrote:
> The current cygwin snapshot has fixes for:
> 
> 1) missing cygserver
> 
> 2) bash hang
> 
> 3) vim SEGV
> 
> If anyone has reported any other problems then please try the snapshot
> and see if they still exist.  2 and 3 above are particularly nasty bugs
> which could cause a lot of other mysterious problems.
> 
> http://cygwin.com/snapshots/
> 
> cgf
> 
I'm using CVS compiled version of 2004-01-21 10:00 GMT+1 and I'm 
experimenting the following problem with pipe !

 From a bash script I'm running the following command (after a lot of 
other's) and bash crash.
The first command is a win32 application isql (Sql server 2000 tool), 
and other are sed and sort from cygwin.
If I put these commands in a little script, no problem. Before no 
problem at all, but now the first command returns 3'768'666 bytes (a 
little bit more).

Info:
----
set -x
eval "$ISQL_WITH_TAB" -HEXPED << EOF_SELECT_PTT | \
              eval "$ISQL_TRIM_FOR_TAB" | \
              sort -t"${TAB}" -k 1,1n -k 41,41 -k 2,2n -k 17,17n -k 3,3n 
 > result_select_ptt$NBPLIS.$extension
SET NOCOUNT ON
GO
SELECT
     vdi_heure_max_dep            = c.vdi_heure_max_dep, 
     -- 01)
     -- Tournée
     trq_pos                      = c.tou_pos, 
     -- 02)
...
...
...
EOF_SELECT_PTT

...

And the result
--------------
+ eval 'isql -s"	" -E -SJLE1 -droutage -n -h-1 -b -w 2147483647' -HEXPED
++ isql '-s	' -E -SJLE1 -droutage -n -h-1 -b -w 2147483647 
-HEXPED_PTT2_Bao_102
+ eval 'sed -e "s/	 \{1,\}/	/g;    s/ \{1,\}	/	/g;    s/^ \{1,\}//; 
s/ \{1,\}$//;    /^$/d"'
++ sed -e 's/	 \{1,\}/	/g;    s/ \{1,\}	/	/g;    s/^ \{1,\}//;    s/ 
\{1,\}$//;    /^$/d'
+ sort '-t	' -k 1,1n -k 41,41 -k 2,2n -k 17,17n -k 3,3n
in handle_threadlist_exception!
! Second case <<<<<<<<<< _My_added_trace_
in handle_threadlist_exception!
! Second case <<<<<<<<<< _My_added_trace_

Extract of my modified src/winsup/cygwin/cygtls.cc :
--------------------------------------------------
extern "C" DWORD __stdcall RtlUnwind (void *, void *, void *, DWORD);
static int
handle_threadlist_exception (EXCEPTION_RECORD *e, void *frame, CONTEXT 
*, void *)
{
   small_printf ("in handle_threadlist_exception!\n");
   if (e->ExceptionCode != STATUS_ACCESS_VIOLATION)
   {
     small_printf ("! ACCESS VIOLATION\n"); <<<<<<<<<< _My_added_trace_
     return 1;
   }

   sentry here;
   if (threadlist_ix != BAD_IX || !here.acquired ())
   {
     small_printf ("! Second case\n"); <<<<<<<<<< _My_added_trace_
     return 1;
   }

   extern void *threadlist_exception_return;
   cygheap->threadlist[threadlist_ix]->remove (INFINITE);
   threadlist_ix = 0;
   RtlUnwind (frame, threadlist_exception_return, e, 0);
   small_printf ("return 0\n");
   return 0;
}

$ cat bash.exe.stackdump
Exception: STATUS_ACCESS_VIOLATION at eip=610266C2
eax=0A0CD008 ebx=00000014 ecx=616601DC edx=0A030000 esi=00D3EC0C 
edi=610E9774
ebp=00D3EBC4 esp=00D3E89C program=C:\cygwin\usr\local\bin\bash.exe
cs=001B ds=0023 es=0023 fs=0038 gs=0000 ss=0023
Stack trace:
Frame     Function  Args
00D3EBC4  610266C2  (00000734, 00D3EC0C, 000000A8, 00D3EBF8)
00D3F0C4  61089888  (610E9774, 000002A8, 00D3F0E4, 00D3F11C)
00D3F0E4  61003096  (610E9774, 00D3F11C, 61003030, 00000000)
00D3F114  61003DD4  (00000000, 00000000, 00000000, 00000000)
00D3FFA4  61003D8A  (00000000, 00000000, 00000000, 00000000)
End of stack trace

$ echo "610266C2
61089888
61003096
61003DD4
61003D8A" | xargs addr2line -e /bin/cygwin1.dll
/cygdrive/u/src/external/cygwin/release/i686-pc-cygwin/winsup/cygwin/../../../../src/winsup/cygwin/exceptions.cc:956
/cygdrive/u/src/external/cygwin/release/i686-pc-cygwin/winsup/cygwin/../../../../src/winsup/cygwin/sigproc.cc:1182
/cygdrive/u/src/external/cygwin/release/i686-pc-cygwin/winsup/cygwin/../../../../src/winsup/cygwin/cygthread.cc:71
/cygdrive/u/src/external/cygwin/release/i686-pc-cygwin/winsup/cygwin/../../../../src/winsup/cygwin/cygtls.cc:93
/cygdrive/u/src/external/cygwin/release/i686-pc-cygwin/winsup/cygwin/../../../../src/winsup/cygwin/cygtls.cc:82
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: cygcheck.out
URL: <http://cygwin.com/pipermail/cygwin/attachments/20040121/674dc480/attachment.ksh>
-------------- next part --------------
--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/


More information about the Cygwin mailing list