On Thu, 16 Jun 2022 14:22:13 +0100 Mark Brown <broonie@xxxxxxxxxx> wrote: > On Wed, Jun 15, 2022 at 02:46:23PM +0200, David Jander wrote: > > These patches optimize the spi_sync call for the common case that the > > worker thread is idle and the queue is empty. It also opens the > > possibility to potentially further optimize the async path also, since > > it doesn't need to take into account the direct sync path anymore. > > I've given this a first pass and it looks sensible so far - I'll need to > give it a more thorough look but I'd expect it should be fine. The > numbers certainly look good. Thanks! The current patch set probably needs to get partly squashed, since there are a few patches that undo changes from a previous patch. I left them like this in order to hopefully make the step by step mutation more clear for review. I had some doubts about patch 11, since it introduces 2 new members to struct spi_controller. I was trying to keep the pollution down, but I couldn't find a better way to do this optimization. Any suggestions? Maybe a better name/place for these flags? Ideally this would get as much different hardware testing as possible before going further upstream. Do you have access to some platforms suitable for stressing SPI with multiple clients simultaneously? Known "problematic" controllers maybe? Looking forward to your comments. Best regards, -- David Jander