On Fri, Jan 06, 2012 at 11:34:06AM -0800, Chase Douglas wrote:> On 01/06/2012 11:18 AM, Henrik Rydberg wrote:> > On Fri, Jan 06, 2012 at 07:55:44PM +0100, Henrik Rydberg wrote:> >>> 2 different processes should be fine; the problem would be if 2 threads> >>> of the same process share the same file descriptor. So far the rest of> >>> evdev copes just fine with multiple threads using the same fd (all> >>> operations are atomic in this regard), setting ABS_MT_SLOT before> >>> fetching the state break this property.> >>> >> Are we talking about the need for a per-client mutex, or something> >> more subtle, like introducing indirect coupling between threads> >> through per-client states? The former ought to be easily remedied.> > > > Ok, maybe not to so easy after all, which probably answers my own> > question. Looks like a EVIOCGMTSLOT, taking both slot and event code> > as argument, would be the cleaner route to take. Another ioctl, how do we> > feel about that?> > What's the problem with userspace locking?