[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <79E4A06C-26EF-4FF4-AFEA-7E7769FDF995@axentia.se>
Date: Tue, 26 Jun 2018 13:54:01 +0200
From: Peter Rosin <peda@...ntia.se>
To: Wolfram Sang <wsa@...-dreams.de>
CC: linux-kernel@...r.kernel.org,
Vadim Pasternak <vadimp@...lanox.com>,
Michael Shych <michaelsh@...lanox.com>,
Guenter Roeck <linux@...ck-us.net>,
Akinobu Mita <akinobu.mita@...il.com>,
Jean Delvare <jdelvare@...e.com>, linux-i2c@...r.kernel.org
Subject: Re: [PATCH 1/5] i2c: smbus: add unlocked __i2c_smbus_xfer variant
On June 26, 2018 4:37:58 AM GMT+02:00, Wolfram Sang <wsa@...-dreams.de> wrote:
>
>> This is not perfectly equivalent, since i2c_smbus_xfer was callable
>from
>> atomic/irq context if you happened to end up emulating SMBus with an
>I2C
>> transfer, and that is no longer the case with this patch. It is
>unknown
>> (to me) if anything depends on that quirk, but it seems fragile
>enough to
>> simply break those cases and require them to call i2c_transfer
>directly
>> instead.
>
>Couldn't we just add the same trylock-code path here as well? I always
>wondered why I2C and SMBus were not in sync when it came to that. Yet,
>I
>didn't want to change the code for no reason, but it seems we now have
>one?
>
>Rest of the series looks good to me, very nice diffstat!
I don't think it's that easy as I just thought about another problem with lifting the locking from the emulation function. It calls kzalloc(..., GFP_KERNEL), at least in some cases, and that's not a very good idea from atomic/irq context...
Cheers,
Peter
Powered by blists - more mailing lists