develooper Front page | perl.perl5.porters | Postings from April 2000

panic for pseudo-fork for Win32

Thread Previous | Thread Next
From:
Konovalov, Vadim
Date:
April 4, 2000 06:57
Subject:
panic for pseudo-fork for Win32
Message ID:
402099F49BEED211999700805FC7359F4DE9DB@ru0028exch01.spb.lucent.com
Using AciveState-compiled perl 5.6.0 (MSVC):

perl -e "for(0..5){if(fork){exit}}print 'y'"
y
perl -e "for(0..10){if(fork){exit}}print 'y'"
y
perl -e "for(0..11){if(fork){exit}}print 'y'"
panic: pseudo fork() failed at -e line 1.

I tried multiple times with the same result


perl 5.6.0 mine-compiled with  BorlandC++Builder-4 does not
have such panic regardless of number:
perl -e "for(0..800){if(fork){exit}}print 'y'"
y
but ate ~140Mb of memory

Next cases both perls behave the same way:
perl -e "for(0..400){if(fork){}else{exit}}print 'y'"
core dump
perl -e "for(0..212){if(fork){}else{exit}}print 'y'"
y
perl -e "for(0..212){if(fork){}else{exit}}print 'y'"
core dump

Is exit is prohibited from within fork?

for activestate-compiled:
perl -V 
Summary of my perl5 (revision 5 version 6 subversion 0) configuration:
  Platform:
    osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    usethreads=undef use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=undef d_sfio=undef uselargefiles=undef 
    use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
  Compiler:
    cc='cl', optimize='-O1 -MD -DNDEBUG', gccversion=
    cppflags='-DWIN32'
    ccflags ='-O1 -MD -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT
-DHAVE_DES_FCRYPT  -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS
-DPERL_MSVCRT_READFIX'
    stdchar='char', d_stdstdio=define, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=4
    alignbytes=8, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='link', ldflags ='-nologo -nodefaultlib -release
-libpath:"C:\Perl56\lib\CORE"  -machine:x86'
    libpth="C:\MSVStudio\VC98\mfc\lib" "C:\MSVStudio\VC98\lib"
"C:\Perl56\lib\CORE"
    libs=  oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib
comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib  netapi32.lib
uuid.lib wsock32.lib mpr.lib winmm.lib  version.lib odbc32.lib odbccp32.lib
msvcrt.lib
    libc=msvcrt.lib, so=dll, useshrplib=yes, libperl=perl56.lib
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags=' '
    cccdlflags=' ', lddlflags='-dll -nologo -nodefaultlib -release
-libpath:"C:\Perl56\lib\CORE"  -machine:x86'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY USE_ITHREADS PERL_IMPLICIT_CONTEXT
PERL_IMPLICIT_SYS
  Locally applied patches:
  	ActivePerl Build 613
  Built under MSWin32
  Compiled at Mar 24 2000 12:36:25
  %ENV:
    PERL5LIB="D:\Work\PerlScripts\pleps;D:\Work\PerlScripts\utl"
  @INC:
    D:\Work\PerlScripts\pleps
    D:\Work\PerlScripts\utl
    c:/Perl56/lib
    c:/Perl56/site/lib
    .


for perl compiled by BC++Builder-4.0:
Summary of my perl5 (revision 5 version 6 subversion 0) configuration:
  Platform:
    osname=MSWin32, osvers=4.0, archname=MSWin32-x86-multi-thread
    uname=''
    config_args='undef'
    hint=recommended, useposix=true, d_sigaction=undef
    usethreads=undef use5005threads=undef useithreads=define
usemultiplicity=define
    useperlio=undef d_sfio=undef uselargefiles=undef 
    use64bitint=undef use64bitall=undef uselongdouble=undef usesocks=undef
  Compiler:
    cc='bcc32', optimize='-O2 -D_RTLDLL', gccversion=
    cppflags='-DWIN32'
    ccflags ='-O2 -D_RTLDLL -DWIN32 -D_MT  -DPERL_IMPLICIT_CONTEXT
-DPERL_IMPLICIT_SYS'
    stdchar='unsigned char', d_stdstdio=define, usevfork=false
    intsize=4, longsize=4, ptrsize=4, doublesize=8
    d_longlong=undef, longlongsize=8, d_longdbl=define, longdblsize=10
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t',
lseeksize=4
    alignbytes=8, usemymalloc=n, prototype=define
  Linker and Libraries:
    ld='tlink32', ldflags ='
-L"c:\perl\5.6.0\lib\MSWin32-x86-multi-thread\CORE"
-L"c:\borland\cbuilder4\lib"'
    libpth=c:\borland\cbuilder4\lib
    libs= import32.lib cw32mti.lib odbc32.lib odbccp32.lib
    libc=cw32mti.lib, so=dll, useshrplib=yes, libperl=perl56.lib
  Dynamic Linking:
    dlsrc=dl_win32.xs, dlext=dll, d_dlsymun=undef, ccdlflags='-tWD'
    cccdlflags=' ', lddlflags='-Tpd
-L"c:\perl\5.6.0\lib\MSWin32-x86-multi-thread\CORE"
-L"c:\borland\cbuilder4\lib"'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY USE_ITHREADS PERL_IMPLICIT_CONTEXT
PERL_IMPLICIT_SYS
  Built under MSWin32
  Compiled at Apr  4 2000 17:11:32
  %ENV:
    PERL5LIB="D:\Work\PerlScripts\pleps;D:\Work\PerlScripts\utl"
  @INC:
    D:\Work\PerlScripts\pleps
    D:\Work\PerlScripts\utl
    d:/WORK/PerlCompile/ffperl-5.6.0/perl-5.6.0/lib
    .

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About