[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190905132344.byfybt6s42cajtfz@treble>
Date: Thu, 5 Sep 2019 08:23:44 -0500
From: Josh Poimboeuf <jpoimboe@...hat.com>
To: Jiri Kosina <jikos@...nel.org>
Cc: Petr Mladek <pmladek@...e.com>,
Joe Lawrence <joe.lawrence@...hat.com>,
Miroslav Benes <mbenes@...e.cz>, linux-kernel@...r.kernel.org,
live-patching@...r.kernel.org
Subject: Re: [RFC PATCH 2/2] livepatch: Clear relocation targets on a module
removal
On Thu, Sep 05, 2019 at 01:19:06PM +0200, Jiri Kosina wrote:
> On Thu, 5 Sep 2019, Petr Mladek wrote:
>
> > > I don't have a number, but it's very common to patch a function which
> > > uses jump labels or alternatives.
> >
> > Really? My impression is that both alternatives and jump_labels
> > are used in hot paths. I would expect them mostly in core code
> > that is always loaded.
> >
> > Alternatives are often used in assembly that we are not able
> > to livepatch anyway.
> >
> > Or are they spread widely via some macros or inlined functions?
>
> All the indirect jumps are turned into alternatives when retpolines are in
> place.
Actually in C code those are done by the compiler as calls/jumps to
__x86_indirect_thunk_*.
But there are still a bunch of paravirt patched instructions and
alternatives used throughout the kernel.
--
Josh
Powered by blists - more mailing lists