I've got 2 programs, one Xenomai user space real time thread and one normal user space program.
My normal user space is trying to pass a structure to my real time program and failing. my RT thread reads in a 1ms loop with: err = rt_pipe_read(control_pipe,k,sizeof(control_t),TM_NONBLOCK); my regular linux program writes a real time fifo with: int fd = open(dev, O_WRONLY|O_SYNC); err = write(fd,&c,sizeof(c)); if(err<=0)error(0,-err, "write failed with %d",err); close(fd); The user space program succeeds (write returns no error and doesn't block), but the RT thread never see's the data, continually returning -EINTR. Note that if I change the real time thread to TM_INFINITE it works, but blocks for course, which isn't what I want, since I only want to pull out data at the beginning of a constant loop. Is this the correct behavior? Does read have to be set up and waiting for the data to recieve it? thx, NZG _______________________________________________ Xenomai-help mailing list [email protected] https://mail.gna.org/listinfo/xenomai-help
