> It seems Linux only supports anonymous shared memory, as if a filename
> is provided apr_shm_create() returns APR_EEXIST, and apr_shm_attach()
> returns APR_EGENERAL. Is this correct?
[ With my little knowledge :) ]
I don't think that's a case.
Normally EEXIST is returned when CREATE and EXCL flags are combined.
So I guess you are trying to create segment which is already there.
check with ipcs
whether you have orphan segments ('cause of some reasons)
What are values for these constants in your apr.h (method to use for SHM)
APR_USE_SHMEM_MMAP_TMP
APR_USE_SHMEM_MMAP_SHM
APR_USE_SHMEM_MMAP_ZERO
APR_USE_SHMEM_SHMGET_ANON
APR_USE_SHMEM_SHMGET
APR_USE_SHMEM_MMAP_ANON
Regards
Amit
|