The Xserver doesn't pick the keys. The OS does, ie. it allocates
them with IPC_PRIVATE. You are trying to allocate segments that
have already been allocated by other processes such as the Xserver.
Are you calling shmget with IPC_CREAT and checking your return values?
If you're not having the OS allocate them for you by passing
IPC_PRIVATE as the key, you'll need to be checking return values.
Mark.
On Mon, 10 Nov 2003, Richard L. Kitchen wrote:
> I am running version 4.3.0 of XFree86 and I have a problem with
> the Xserver removing shared memory partitions that belong to other
> processes when it starts.
>
> Apparently when I originally wrote my code which uses shared
> memory I unwisely choose to use shared memory keys in the
> range 1 - 200.
>
> I notice that the Xserver seems to create shm partitions with
> key values of 0 and 2 and most likely other values that I haven't
> yet gleaned.
>
> If I change the key value to some rather large number my problem
> goes away, i.e. my partition is not marked for deletion by the
> server.
>
> My question is: what ranges of shared memory key values are
> being used by the Xserver and friends ? I would like to change
> my code to avoid the problem now and in the future.
>
>
>
>
>
> ___
> XFree86 mailing list
> [EMAIL PROTECTED]
> http://XFree86.Org/mailman/listinfo/xfree86
>
___
XFree86 mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xfree86