cygwin 1.7.5, perl *** fatal error TP_NUM_W_BUFS too smal

Nasser M. Abbasi nma@12000.org
Mon Jun 7 04:05:00 GMT 2010


On 6/6/2010 8:32 PM, Reini Urban wrote:

> Nasser M. Abbasi schrieb:
>> On 6/4/2010 2:44 AM, Nasser M. Abbasi wrote:
>>> On 6/4/2010 1:36 AM, Corinna Vinschen wrote:
>>>>>
>>>>> Error: Cannot read 'img2.png': No such file or directory
>>>>> Converting image #1
>>>>> 0 [main] perl 3400 C:\cygwin\bin\perl.exe: *** fatal error -
>>>>> Internal error: TP_NUM_W_BUFS too small."
>>>>
>>>
>>>> This looks like an internal error in Cygwin which runs out of TLS
>>>> filename buffers. For a start, could you please strace the perl
>>>> process? This may help to figure out the function in which the problem
>>>> occurs.
>>>>
>>>>
>>>> Corinna
>>>>
>>>
>>
>>>
>>> $ export PERLDB_OPTS="NonStop frame=2"
>>> make test
>>>
>>
>> I got a little more useful output using this:
>>
>> $export PERLDB_OPTS="NonStop AutoTrace frame=2"
>> $ make test>&  out.txt
>


> PERLDB_OPTS is only for the perl debugger, which you don't run I suppose.
> Corinna wanted a strace for perl, around the section where the fork
> fails. It must not be the whole 2GB.
>
> To build a debugging perl you'd need the source package and run
> ./build --debug
> But this won't be needed I suppose, as it's a cygwin error around fork.
>

Ok, thanks for letting me know.

>> Looking at out.txt, the output around the crash is below. It seems to
>> come after exec($cmd). It looks like it can't spawn a new process.
>>
>> btw, this is windows 7. new PC, 8 GM ram.
>
> UAC already tried to disable?
>

do not know. If this is something I can check on my end or something, 
pls let me know. This is a new PC, and I did not change any UAC settings 
on it.  All default setting on windows 7.

>> If you need the complete file out.txt, I can send it to you directly.
>>
>> thanks
>> --Nasser
>>
>> =========
>>
>> 262: my ($self,$cmd,$in,$out,$err) = @_;
>> 263: carp qq{Debug (syswait): Running "$cmd"\n} if($Verbose);
>> 265: my $status;
>> 266: my $child_pid;
>> 267: if ($child_pid = fork) {
>


> You can try to add a small sleep here after line 267, the fork.
>          sleep(0.2);
>

OK, Will do that, I need to muck around the perl code and find where to 
do this. will let you know if it changes anything.


>> 268: $status = waitpid($child_pid, 0);
>> ######### Forked, but do not know how to create a new TTY. #########
>> Since two debuggers fight for the same TTY, input is severely entangled.
>>
>> I know how to switch the output to a different window in xterms, OS/2
>> consoles, and Mac OS X Terminal.app only. For a manual switch, put the name
>> of the created TTY in $DB::fork_TTY, or define a function
>> DB::get_fork_TTY() returning this.
>>
>> On UNIX-like systems one can get the name of a TTY for the given window
>> by typing tty, and disconnect the shell from TTY by sleep 1000000.
>>
>> 274: unless(exec($cmd)) {
>> 0 [main] perl 4524 C:\cygwin\bin\perl.exe: *** fatal error - Internal
>> error: TP_NUM_W_BUFS too small.
>> 269: carp "Debug (syswait): Finished child process: #$child_pid\n"
>> 270: if($Verbose);
>> 271: $child_pid = 0;
>> 272: return($?);
>> exited L2hos::Unix::syswait
>>
>> Error while converting image
>> 4239: if (! -r "${PREFIX}$img") {
>> 4240:&write_warnings("\nFailed to convert image $psname.ps")
>> ========================
>>
>> --
>> Problem reports: http://cygwin.com/problems.html
>
> We haven't got this report, BTW.
>

OK, will make an official report.


> Also, where do have your latex2html from?
>

I have documented the latex2html installation on my page below, so I 
suppose anyone can reproduce what I did easily (if they have windows 7, 
64 bit OS, which I do not know if it is releated or not). Please see 
below for the steps:

http://12000.org/my_notes/l2hwin/index.htm


--Nasser

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list