Re: [Evolution] Gdk-WARNING **: shmget failed!



Thank you; I'll try that. It's my understanding that gtk 1.2.9 will
allocate a smaller number of larger segments per process (perhaps one
large one), which will alleviate this problem as well. It might be nice
if the kernel supported altering that value via /proc.

-M

"Dirk-Jan C . Binnema" wrote:

Hi,

(I only saw the 'Re:' to this message, if I understand it well, it's
about the annoying 'Gdk-WARNING **: shmget failed!')

This problem is discussed in the GNOME Faq (http://www.gnome.org/faqs/users-faq/problems.html):

Q:  Why do I get Gdk-WARNING **: shmget failed!  when I try to run some programs?

A: This error indicates that the application is not able to get a
shared memory segment. There are a number of reasons why this could
happen, including:

shared memory is not set up (properly) on the system

all shared memory segments are being used

GNOME and Gdk applications use a lot of shared memory segments
(typically 6 segments per process that uses shared memory), so it is
possible your system was not configured with enough segments to
support GNOME with a lot of applications running. (Note that many
GNOME applications can be run without using shared memory by starting
them with the flag --no-xshm.)

The following instructions apply for the Linux kernel. First, find out
the maximum number of shared memory segments your kernel is configured
for by typing ipcs -l. Look for the line starting with "max number of
segments = ". If it is 128 or less, it is likely that this is not
enough. Depending on how many applications and applets you use, you
made need quite a few more.

To increase the number of shared segments with kernel 2.2, you have to
increase the _SHM_ID_BITS variable in
/usr/src/linux/include/asm/shmparam.h. The number of shared memory
segments is 2 raised to the power of _SHM_ID_BITS. Thus, 7 corresponds
to 128, 8 to 256, 9 to 512, and 10 to 1024. You will then need to
rebuild your kernel and reboot for the change to become active.

--Dirk-Jan.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]