Bug 193870

Summary: Large data-set perl script which forks child processes will coredump near exit()
Product: Base System Reporter: lsim4242
Component: kernAssignee: freebsd-bugs (Nobody) <bugs>
Status: New ---    
Severity: Affects Some People    
Priority: ---    
Version: 10.0-RELEASE   
Hardware: amd64   
OS: Any   
Description Flags
script_to_core_dump none

Description lsim4242 2014-09-23 12:40:22 UTC
I do not know whether I should be 'bugging' to the perl mob, or
to the FreeBSD amd64 group.

Well here goes.  I am able to reduce the core-dumping problem to a perl script
which can be used to generate the problem.

Basically, you have a perl script which chews up N byte size of memory,
then forks out a few child processes (in my case 2). Then each child
does an 'exit(0)'. The parent then 'wait()' for each child and then exit.

Where N can be larger than (Your real memory/number of child forks).
This is to force the swap space to be used.

On running this script on (Fbsd 10.0-RELEASE-p3 amd64) perl v5.16.3,
the script will core-dump.

Additional info:
** On i386 FreeBSD versions, the core-dump does *not* happen including
   Fbsd 10.0 i386

** As I have only recently started using amd64, I do not know if this
   problem also exist in prior versions of Fbsd 10.0 amd64.

** I also wrote a C version, and that ran fine on the amd64 OS!

Please help as I really would like to used amd64 instead of i386 versions
of Fbsd.

Comment 1 lsim4242 2014-09-23 12:49:41 UTC
Created attachment 147596 [details]