> Whenever possible, please post patches inline (I had to manually copy it
> to allow commenting).

Sure, no problem.

> You cannot bluntly call release() here. You may not run in Linux context
> while that handler demands this. 

It's also called in xnpipe_disconnect() (if I follow 'goto cleanup' and
the user-space isn't connected). So is there a different policy here?
I mean should xnpipe_connect() just be called from rt context whereas
xnpipe_disconnect() has to be called from non-rt context?

> Moreover, releasing the state is the
> job of the NRT user that opened it and obviously still has a hand on it.

Yeah, that's the tricky part. I left that part out yet ...

> (And the locking is imbalanced here, but that is shadowed by the other
> flaws.)


If we had that new pipe behaviour it could significantly 
speed-up debugging for us because we wouldn't have to stop (and
eventually start) all NRT applications before restarting the RT

Thanks for commenting on my quick and dirty patch. I think, now
I know where to continue.


Xenomai-core mailing list

Reply via email to