[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1385980409.843563145@f327.i.mail.ru>
Date: Mon, 02 Dec 2013 14:33:29 +0400
From: Alexander Shiyan <shc_work@...l.ru>
To: Philippe Rétornaz <philippe.retornaz@...il.com>
Cc: Samuel Ortiz <sameo@...ux.intel.com>,
linux-kernel@...r.kernel.org,
Sascha Hauer <kernel@...gutronix.de>,
Shawn Guo <shawn.guo@...aro.org>,
Lee Jones <lee.jones@...aro.org>,
linux-arm-kernel@...ts.infradead.org
Subject: Re: [PATCH RESEND] mfd: mc13xxx: Remove unneeded mc13xxx_lock/unlock
Hello.
> Le 30/11/2013 06:01, Alexander Shiyan a écrit :
> > Locking is performed by regmap API so no additional locking is
> > needed. Nevertheless, keep locking in the ADC conversion routine.
> > This need for keep proper read ADC sequence when calling from adc &
> > touchscreen drivers.
>
> You can't do that so easily !
> Regmap only protect against concurrent access to the SPI/I2C bus, but do
> not protect the driver's internal data.
> And it does not protect against a race between concurrent access at a
> higher level :
...
> It's OK to do this if you are protected by a mutex, but as soon as you
> remove it you will have concurrency between two irq_unmask/irq_mask.
irq_unmask/irq_mask and some other functions can be converted to use
mc13xxx_reg_rmw. So I'll make a patch for this first.
Thanks.
---
Powered by blists - more mailing lists