Re: [PATCH v10 6/6] x86/split_lock: Enable split lock detection by kernel parameter
From: Peter Zijlstra
Date: Thu Nov 21 2019 - 15:20:08 EST
On Thu, Nov 21, 2019 at 12:25:35PM -0800, Fenghua Yu wrote:
> > > We are working on a separate patch set to fix all split lock issues
> > > in atomic bitops. Per Peter Anvin and Tony Luck suggestions:
> > > 1. Still keep the byte optimization if nr is constant. No split lock.
> > > 2. If type of *addr is unsigned long, do quadword atomic instruction
> > > on addr. No split lock.
> > > 3. If type of *addr is unsigned int, do word atomic instruction
> > > on addr. No split lock.
> > > 4. Otherwise, re-calculate addr to point the 32-bit address which contains
> > > the bit and operate on the bit. No split lock.
> Actually we only find 8 places calling atomic bitops using type casting
> "unsigned long *". After above changes, other 8 patches remove the type
> castings and then split lock free in atomic bitops in the current kernel.
Those above changes are never going to happen.