malloc (was: making a request to IBM)

Pierre Asselin pa at appmag.com
Tue Apr 9 12:48:14 AEST 1991


The problem:  as you all remember,  malloc()  returns  NULL  only
when the process exceeds its datasize limit.  If malloc returns a
non-null pointer, the memory  may  turn  out  to  be  exceedingly
virtual:   there  won't  be any paging space behind it.  AIX runs
out of paging space when the process actually  uses  the  memory.
Various  processes  die.   In Info, see `List of Books', `General
Concepts  and  Procedures',  scroll  ~1/3  down,  `Paging   Space
Overview'.  See also psmalloc.c in /usr/lpp/bos/samples.  Etc etc
etc.

Personally, I think it's a bug.  If  there  is  no  memory  left,
malloc  should  return  a  NULL.  IBM says it's a feature,  catch
SIGDANGER if you don't like it.  At  least  one  person  at  SDRC
agrees with me:

> IBM RS/6000 Memory Allocation Problem           September, 1990
>
> ...The operating system on the IBM RS/6000 allows CAEDS to
> allocate more  memory  than  is  actually  available...

Now, we meet with IBM representatives every Thursday so that  all
our  problems  may get solved.  At those meetings I am encouraged
to report these things  to  IBM,  even  if  they  involve  design
changes.  (This is where the `design APAR' mythology started.  As
pointed out later on comp.unix.aix, there is no such thing  as  a
design APAR.)

The predictable result came out today.
1) It's not a bug.  It's a feature.  Therefore, there is no problem.
2) If I want a change, I am to file a `DCR' with my
   marketing representative.
3) This behaviour of malloc is an IBM design and was not
   mandated by an external standard such as SVID.

The only interesting piece of information is (3).
General conclusion from this exercise:

 o  IBM doesn't listen.  It doesn't know how.
 o  IMB doesn't respond with accurate information either.
    It doesn't know how.

General conclusions from earlier exercises:

 o  Software Defect Support is officially limited to its narrow mandate.
 o  Technical support is available for the RISC-6000's.
    It's called comp.unix.aix.
 o  Accurate information on the RISC-6000's is available, but only
    on comp.unix.aix.
 o  Accurate information on the IBM support structure is available,
    but only on comp.unix.aix.
 o  To this day, IBM is convinced that it's doing a fine job.
 o  Hardware support does work.  Beats me.

Austin:  STAY ON THE NET!  You're the only way we'll ever get the
straight dope.  (Anyone care to give us the straight dope on this one?)

Good day.

  --Pierre Asselin, R&D, Applied Magnetics Corp.  I speak for me.



More information about the Comp.unix.aix mailing list