Re: [RFC PATCH 00/16] x86/split_lock: Enable #AC exception for split locked accesses

From: Fenghua Yu
Date: Sat Jun 23 2018 - 14:51:08 EST


On Fri, Jun 22, 2018 at 12:13:37AM +0200, Peter Zijlstra wrote:
> On Thu, Jun 21, 2018 at 03:00:03PM -0700, Fenghua Yu wrote:
> > For example, on a consolidated real-time machine, some cores are running
>
> > Another example, in a public cloud deployed in the field, a user process
>
> In either case a single split-lock shouldn't be a real problem, if you
> program the event with a count of 1 and have the NMI handler kill the
> offending task, you should be good.
>
> Not saying the #AC isn't nicer, just saying the PMU based thing can
> still work.

The difference between perf event and #AC for split lock is perf event
is after the fact while #AC is before the fact.

In the examples (esp. the first example), hard real time cannot afforrd
a split lock/bus lock. Perf captures the event and kill the task; but
the split lock has been issued and harm has been done. #AC for split lock
kills the task before the task generates split lock or bus lock to hurt
real time tasks.

Thanks.

-Fenghua