<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <div class="moz-cite-prefix">
      <pre>On 8/22/22 11:19, Michael Ellerman wrote:
</pre>
    </div>
    <blockquote type="cite" cite="mid:87lergltej.fsf@mpe.ellerman.id.au">
      <blockquote type="cite">
        <blockquote type="cite">
          <pre class="moz-quote-pre" wrap="">So I guess the compiler has decided not to inline it (why?!), and it is
not marked noinstr, so it gets KASAN instrumentation which crashes in
real mode.

We'll have to make sure everything get_pseries_errorlog() is either
forced inline, or marked noinstr.
</pre>
        </blockquote>
        <pre class="moz-quote-pre" wrap="">
Making the following functions always_inline and noinstr is fixing the issue.
__always_inline pseries_errorlog_id()
__always_inline pseries_errorlog_length()
__always_inline do_enter_rtas()
__always_inline srr_regs_clobbered()
noinstr va_rtas_call_unlocked()
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Why do we need it? Because of fwnmi_release_errinfo()?</pre>
    </blockquote>
    <pre class="moz-quote-pre" wrap="">Yes.</pre>
    <blockquote type="cite" cite="mid:87lergltej.fsf@mpe.ellerman.id.au">
      <blockquote type="cite">
        <pre class="moz-quote-pre" wrap="">Shall I post the patch?
</pre>
      </blockquote>
      <pre class="moz-quote-pre" wrap="">
Yeah.

cheers
</pre>
    </blockquote>
  </body>
</html>