[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CADYN=9JyjfQv6nh=kj5uOPXEWGxTycUPsuE=Vjyct-8=pYmVqA@mail.gmail.com>
Date: Fri, 26 Jul 2019 12:01:05 +0200
From: Anders Roxell <anders.roxell@...aro.org>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Will Deacon <will.deacon@....com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v2] seqlock: mark raw_read_seqcount and
read_seqcount_retry as __always_inline
On Sun, 23 Jun 2019 at 13:16, Thomas Gleixner <tglx@...utronix.de> wrote:
>
> On Tue, 11 Jun 2019, Anders Roxell wrote:
>
> > With the function graph tracer, each traced function calls sched_clock()
> > to take a timestamp. As sched_clock() uses
> > raw_read_seqcount()/read_seqcount_retry(), we must ensure that these
> > do not in turn trigger the graph tracer.
> > Both functions is marked as inline. However, if CONFIG_OPTIMIZE_INLINING
> > is set that may make the two functions tracable which they shouldn't.
> >
> > Rework so that functions raw_read_seqcount and read_seqcount_retry are
> > marked with __always_inline so they will be inlined even if
> > CONFIG_OPTIMIZE_INLINING is turned on.
>
> Why just those two? The same issue can happen in other places with other
> clocks which can be utilized by the tracer.
>
> Aside of your particular issue, there is no reason why any of those
> functions should ever trigger a graph.
Yes you are correct. I'll update the patch with __always_inline to all functions
in that file.
Cheers,
Anders
Powered by blists - more mailing lists