On Sun, Oct 09, 2005 at 07:37:23PM -0400, Justin Pryzby wrote:
> On Sun, Oct 09, 2005 at 04:15:22PM -0700, John Darrah wrote:
> > The following brace expansion: echo
> > {0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}{0,1,2,3,4,5,6,7,8,9}
> > 
> > Fails with the following error: bash: xmalloc:
> > ../bash/make_cmd.c:167: cannot allocate 8 bytes (0 bytes allocated)
> > 
> > And then the shell dies (crash).
> Do you see high memory usage beforehand?  (I don't know if linux
> malloc/realloc EVER fail initially, but they can "fail" after the
> fact, with OOM killer).

Shouldn't I see the result of an OOM using dmesg or does the 
kernel just kill the process silently??

I answered my own question using pdksh on a huge brace 
expansion. yes OOM is reported in a dmesg... so in 
conclusion bash is failing before memory exhaustion. I have 
2G of swap and it takes a while to get there with pdksh, but 
with bash it fails just after a few seconds.

> 
> > I'm quite sure that on older versions of the shell this worked OK.
> Do you know when or what versions?
No... but I'm sure it was the 2.x shell i'm refering to because it's been
a while since i've used brace expansion to generate large lists.

> 
> I don't know if this is a bug; I was able to duplicate the error, but
> with high memory usage.  If bash's implementation requires high memory
> usage, then its not a "bug" (though a wishlist to not require such
> large ammounts of memory would certainly be legitimate). 
I still think there is something funny going on here.

> 
> -- 
> Clear skies,
> Justin


-- 
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]

Reply via email to