On Tue, Nov 03, 2015 at 03:36:10PM +0530, Vignesh R wrote:

> +     }
> +     mutex_lock(&master->mmap_lock_mutex);
> +     ret = master->spi_mtd_mmap_read(spi, from, len, retlen, buf,
> +                                     read_opcode, addr_width,
> +                                     dummy_bytes);
> +     mutex_unlock(&master->mmap_lock_mutex);
> +     if (master->auto_runtime_pm)
> +             pm_runtime_put(master->dev.parent);

It's a bit worrying that this doesn't sync with the message queue except
via the mutex: this means that we might be out of order with respect to
any asynchronous transfers that are happening on the device.  I'm not
sure that this is a practical problem, though there is some risk of
unfair scheduling that would have to be under extreme load and it might
make sense to prioritise reads anyway.

Attachment: signature.asc
Description: PGP signature

Reply via email to