Hi, Andi. Thanks for your comments! > On Apr 13, 2021, at 2:03 AM, Andi Kleen <ak@xxxxxxxxxxxxxxx> wrote: > > Alex Kogan <alex.kogan@xxxxxxxxxx> writes: >> >> + numa_spinlock_threshold= [NUMA, PV_OPS] >> + Set the time threshold in milliseconds for the >> + number of intra-node lock hand-offs before the >> + NUMA-aware spinlock is forced to be passed to >> + a thread on another NUMA node. Valid values >> + are in the [1..100] range. Smaller values result >> + in a more fair, but less performant spinlock, >> + and vice versa. The default value is 10. > > ms granularity seems very coarse grained for this. Surely > at some point of spinning you can afford a ktime_get? But ok. We are reading time when we are at the head of the (main) queue, but don’t have the lock yet. Not sure about the latency of ktime_get(), but anything reasonably fast but not necessarily precise should work. > Could you turn that into a moduleparm which can be changed at runtime? > Would be strange to have to reboot just to play with this parameter Yes, good suggestion, thanks. > This would also make the code a lot shorter I guess. So you don’t think we need the command-line parameter, just the module_param? Regards, — Alex