This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: cygwin stable and cvs snapshot - fork() bug

> If you want anything like this to be looked at faster, the best thing
> you can do is Apparently the
> cygwin developers have not so far been interested to download mpd,
> make unspecified changes to the mpd sources to get them to compile
> (the changes you listed on the bug report were not sufficient), and
> then setup the configuration files for mpd, figure out what mpd is
> supposed to do, and THEN debug the problem.
> Lev

hey, thanks for your reply

ok i tried to create a STC, but i'm don't really know ipc and shared
mem.. anyway i traced down the part, which cause trouble

(init code, called before the fork occours)
if ((shmid = shmget(IPC_PRIVATE, allocationSize, IPC_CREAT | 0777)) < 0)
FATAL("problems shmget'ing\n");
//if ((shmid = shmget(IPC_PRIVATE, allocationSize, IPC_CREAT | 0600)) <
0)	FATAL("problems shmget'ing\n");
if (!(playerData_pd = shmat(shmid, NULL, 0))) FATAL("problems
if (shmctl(shmid, IPC_RMID, NULL) < 0) 	FATAL("problems shmctl'ing\n");

when i comment out 
  if (shmctl(shmid, IPC_RMID, NULL) < 0) 	FATAL("problems

mpd works like a charm. 

       IPC_RMID    is  used  to mark the segment as destroyed. It
                   will actually  be  destroyed  after  the  last
                   detach.   (I.e., when the shm_nattch member of
                   the associated structure  shmid_ds  is  zero.)
                   The  user  must  be the owner, creator, or the

can someone explain me, what i just did? I also tried to change the
shmget rights from 0600 to 0777.

thanks in advance

Unsubscribe info:
Problem reports:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]