linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* modify_ldt returning ENOMEM on highmem machine
@ 2001-12-17 14:25 Holger Lubitz
  2001-12-18 15:24 ` Alan Cox
  0 siblings, 1 reply; 2+ messages in thread
From: Holger Lubitz @ 2001-12-17 14:25 UTC (permalink / raw)
  To: linux-kernel

Hi,

I tried posting this before, but apparently it didn't get through to the
list.
The following are the final lines of a strace of a failing mplayer:

[...]
modify_ldt(0x1, 0xbffff85c, 0x10)       = -1 ENOMEM (Cannot allocate
memory)
--- SIGSEGV (Segmentation fault) ---
+++ killed by SIGSEGV +++

But I have lots of memory available:

[hal@duncan hal]$ cat /proc/meminfo 
        total:    used:    free:  shared: buffers:  cached:
Mem:  1054355456 1012023296 42332160        0 73637888 522129408
Swap: 542826496  4218880 538607616
MemTotal:      1029644 kB
MemFree:         41340 kB
MemShared:           0 kB
Buffers:         71912 kB
Cached:         505916 kB
SwapCached:       3976 kB
Active:         196216 kB
Inactive:       417156 kB
HighTotal:      131008 kB
HighFree:         2044 kB
LowTotal:       898636 kB
LowFree:         39296 kB
SwapTotal:      530104 kB
SwapFree:       525984 kB

The bug exists with 2.4.16 as well as with 2.4.17-rc1 and 2.4.13-ac8.
Under
ac8, I can work around it by copying something large to /dev/null, which
gets
some buffers freed.  With 2.4.16 and .17-rc1, usually all I can do to
get
mplayer working again is reboot.
After memory fills up again (usually one updatedb is sufficient), the
problem
reappears.

I have been unable to reproduce the problem when I use "mem=896M" or on
a
kernel with highmem support disabled, so I suspect it to be highmem
related.

Holger

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: modify_ldt returning ENOMEM on highmem machine
  2001-12-17 14:25 modify_ldt returning ENOMEM on highmem machine Holger Lubitz
@ 2001-12-18 15:24 ` Alan Cox
  0 siblings, 0 replies; 2+ messages in thread
From: Alan Cox @ 2001-12-18 15:24 UTC (permalink / raw)
  To: Holger Lubitz; +Cc: linux-kernel

> I tried posting this before, but apparently it didn't get through to the
> list.
> The following are the final lines of a strace of a failing mplayer:

glibc 2.2 uses lots of ldt's which get vmalloced. Our vmalloc address space
is way too small on big boxes. Grab the patch posted to the kernel list
to only vmalloc large ldts and the box will be fine

Highmem isnt a direct link but large memory boxes are the most problematic


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2001-12-18 18:41 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-12-17 14:25 modify_ldt returning ENOMEM on highmem machine Holger Lubitz
2001-12-18 15:24 ` Alan Cox

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).