On Mon, Aug 3, 2020 at 7:33 AM <pet...@infradead.org> wrote: > > > Thomas wanted paramuck vs noinstr, here goes. Very rough, very nasty, > mostly works. > > It requires call sites are the normal indirect call, and not mangled > retpoison (slow_down_io() had those), it also requires pv_ops[] > assignments are single instructions and not laundered through some > pointless intermediate helper (hyperv). > > It doesn't warn when you get any of that wrong. > > But if you have it all lined up right, it will warn about noinstr > violations due to paramuck:
I certainly agree that pv_ops is mucky, but could you expound on precisely what this patch actually does? On a very quick read-through, I'm guessing you're complaining about any call to pv_ops in a noinstr section? But maybe this is only calls to pv_ops that aren't themselves noinstr?