[PATCH v2 6/8] MTD: xway: fix nand locking

Richard Weinberger richard at nod.at
Sun Jun 19 05:53:40 PDT 2016


Am 19.06.2016 um 14:41 schrieb Boris Brezillon:
> On Sat, 18 Jun 2016 21:14:10 +0200
> Hauke Mehrtens <hauke at hauke-m.de> wrote:
> 
>> From: John Crispin <john at phrozen.org>
>>
>> The external Bus Unit (EBU) can control different flash devices, but
>> these NAND flash commands have to be atomic and should not be
>> interrupted in between. Lock the EBU from the beginning of the command
>> till the end by moving the lock to the chip select.
>>
>> Signed-off-by: John Crispin <john at phrozen.org>
>> Signed-off-by: Hauke Mehrtens <hauke at hauke-m.de>
>> ---
>>  drivers/mtd/nand/xway_nand.c | 20 ++++----------------
>>  1 file changed, 4 insertions(+), 16 deletions(-)
>>
>> diff --git a/drivers/mtd/nand/xway_nand.c b/drivers/mtd/nand/xway_nand.c
>> index 1511bdb..064ee41 100644
>> --- a/drivers/mtd/nand/xway_nand.c
>> +++ b/drivers/mtd/nand/xway_nand.c
>> @@ -94,13 +94,16 @@ static void xway_reset_chip(struct nand_chip *chip)
>>  
>>  static void xway_select_chip(struct mtd_info *mtd, int chip)
>>  {
>> +	static unsigned long csflags;

Why is csflags static? AFAICT this is racy then...

Thanks,
//richard



More information about the linux-mtd mailing list