Re: [External] : Re: [PATCH v14 4/6] locking/qspinlock: Introduce starvation avoidance into CNA
From: Waiman Long <hidden>
Date: 2021-04-14 16:42:08
Also in:
linux-arch, lkml
On 4/13/21 5:01 PM, Alex Kogan wrote:
Hi, Andi. Thanks for your comments!quoted
On Apr 13, 2021, at 2:03 AM, Andi Kleen [off-list ref] wrote: Alex Kogan [off-list ref] writes:quoted
+ 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.quoted
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 parameterYes, good suggestion, thanks.quoted
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?
The CNA code, if enabled, will be in vmlinux, not in a kernel module. As a result, I think a module parameter will be no different from a kernel command line parameter in this regard. Cheers, Longman _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel