Re: [PATCH] serdev: Restore serdev_device_write_buf for atomic context

From: Rob Herring
Date: Thu May 04 2017 - 16:33:22 EST

On Thu, May 4, 2017 at 11:22 AM, Stefan Wahren <stefan.wahren@xxxxxxxx> wrote:
> Am 02.05.2017 um 15:18 schrieb Johan Hovold:
>> On Tue, May 02, 2017 at 07:41:34AM -0500, Rob Herring wrote:
>>> On Tue, May 2, 2017 at 4:06 AM, Johan Hovold <johan@xxxxxxxxxx> wrote:
>>>> On Fri, Apr 28, 2017 at 01:47:21PM +0200, Stefan Wahren wrote:
>>>>> Starting with commit 6fe729c4bdae ("serdev: Add serdev_device_write
>>>>> subroutine") the function serdev_device_write_buf cannot be used in
>>>>> atomic context anymore (mutex_lock is sleeping). So restore the old
>>>>> behavior.
>>>> Yeah, preventing use in atomic context seems unnecessary, although any
>>>> clients writing must now deal with serialisation themselves (as before,
>>>> and as they should).
>>> We could just remove the mutex for serdev_device_write and always make
>>> the client responsible for serialization.
>> That sounds reasonable.
> So it's unwanted to have 2 write functions (non-atomic, atomic)?

No, it's unwanted to have more than we need.

Looking closer, we'd also have to ensure the wait for completion is
not called also. So probably better to just leave it as you have done

Acked-by: Rob Herring <robh@xxxxxxxxxx>