Messages in this thread | | | Subject | Re: [PATCH v2 3/4] x86/split_lock: Handle #AC exception for split lock | From | Dave Hansen <> | Date | Fri, 29 Jun 2018 10:29:08 -0700 |
| |
On 06/29/2018 10:16 AM, Fenghua Yu wrote: > On Fri, Jun 29, 2018 at 09:33:54AM -0700, Luck, Tony wrote: >>>> + WARN_ONCE(1, "A split lock issue is detected. Please FIX it\n"); >>> >>> But, warning here is also not super useful. Shouldn't we be dumping out >>> the info in 'regs' instead of the current context? We don't care about >>> the state in the #AC handler, we care about 'regs'. > > But WARN dump not only the state in the #AC handler, but also dump the regs > in the current context. And WARN dumps stack.
Oh, I forgot about the fancy stack following. That might give us useful output, although mixed with useless output about the #AC handler.
But, in any case, could you please at least confirm that this does what you think it does? *Actually* generate #AC inside the kernel, with this code, and share the output?
>> Maybe: >> >> WARN_ONCE(1, "split lock detected at %pF\n", regs[EIP]); > > Should we dump redundant regs info while WARN shows them all already?
I bet it actually makes it easier to read the output and locate the real source of the problem. It's especially important if you're going to do the WARN_() from the #AC handler with all the #AC information as noise in the warning.
| |