Re: [RFC][PATCH 0/7] locking: qspinlock

From: Ingo Molnar
Date: Tue Mar 11 2014 - 06:45:45 EST



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> Hi Waiman,
>
> I promised you this series a number of days ago; sorry for the delay
> I've been somewhat unwell :/
>
> That said, these few patches start with a (hopefully) simple and
> correct form of the queue spinlock, and then gradually build upon
> it, explaining each optimization as we go.
>
> Having these optimizations as separate patches helps twofold;
> firstly it makes one aware of which exact optimizations were done,
> and secondly it allows one to proove or disprove any one step;
> seeing how they should be mostly identity transforms.
>
> The resulting code is near to what you posted I think; however it
> has one atomic op less in the pending wait-acquire case for NR_CPUS
> != huge. It also doesn't do lock stealing; its still perfectly fair
> afaict.
>
> Have I missed any tricks from your code?

Waiman, you indicated in the other thread that these look good to you,
right? If so then I can queue them up so that they form a base for
further work.

It would be nice to have per patch performance measurements though ...
this split-up structure really enables that rather nicely.

Thanks,

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/