Re: [PATCH 1/2] IB/hfi1: Use preempt_{dis,en}able_nort()

From: Steven Rostedt
Date: Thu Oct 05 2017 - 11:55:50 EST


On Thu, 5 Oct 2017 10:37:59 -0500
Julia Cartwright <julia@xxxxxx> wrote:

> On Thu, Oct 05, 2017 at 05:27:30PM +0200, Thomas Gleixner wrote:
> > On Thu, 5 Oct 2017, Julia Cartwright wrote:
> > > On Tue, Oct 03, 2017 at 12:49:19PM -0300, Arnaldo Carvalho de Melo wrote:
> > > > - preempt_disable();
> > > > + preempt_disable_nort();
> > > > this_cpu_inc(*sc->buffers_allocated);
> > >
> > > Have you tried this on RT w/ CONFIG_DEBUG_PREEMPT? I believe that the
> > > this_cpu_* operations perform a preemption check, which we'd trip.
> >
> > Good point. Changing this to migrate_disable() would do the trick.
>
> Wouldn't we still trip the preempt check even with migration disabled?
> In another thread I asked the same question: should the preemption
> checks here be converted to migration-checks in RT?

Is it a "preemption check"? Getting a cpu # should only care about
migration. This isn't the same as a rcu_sched check is it? That does
care about preemption.

-- Steve