From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dmitry Torokhov Subject: Re: [PATCH v2] Input: evdev - Add EVIOC mechanism to extract the MT slot state Date: Fri, 6 Jan 2012 10:18:45 -0800 Message-ID: <20120106181845.GA22653@core.coreip.homeip.net> References: <1325863019-2242-1-git-send-email-rydberg@euromail.se> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Received: from mail-iy0-f174.google.com ([209.85.210.174]:38460 "EHLO mail-iy0-f174.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1758961Ab2AFSSx (ORCPT ); Fri, 6 Jan 2012 13:18:53 -0500 Content-Disposition: inline In-Reply-To: Sender: linux-input-owner@vger.kernel.org List-Id: linux-input@vger.kernel.org To: Benjamin Tissoires Cc: Henrik Rydberg , linux-input@vger.kernel.org, linux-kernel@vger.kernel.org, Chase Douglas Hi Benjamin, On Fri, Jan 06, 2012 at 07:00:22PM +0100, Benjamin Tissoires wrote: > Hi guys, > I read somewhere in the code of Android a comment in which they > complain about not being able to retrieve the slots states. So they > assume they are all at 0. > So this mechanism is good to have. > However, back in January 2011, Dmitry raised the problem that this > code was not thread safe.What happens if 2 applications ask for > different slots values (let say X.org and utouch-frame)? 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. Thanks. -- Dmitry