<br><br>On Wednesday, March 29, 2017, Paul Mackerras <<a href="mailto:paulus@ozlabs.org">paulus@ozlabs.org</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Wed, Mar 29, 2017 at 12:07:03PM +1100, Michael Ellerman wrote:<br>
> Denis Kirjanov <<a href="javascript:;" onclick="_e(event, 'cvml', 'kda@linux-powerpc.org')">kda@linux-powerpc.org</a>> writes:<br>
><br>
[...]<br>
> > @@ -3930,7 +3934,11 @@ static int kvmppc_book3s_init_hv(void)<br>
> >      * indirectly, via OPAL.<br>
> >      */<br>
> >  #ifdef CONFIG_SMP<br>
> > -   if (!get_paca()->kvm_hstate.xics_<wbr>phys) {<br>
> > +   preempt_disable();<br>
> > +   xics_phys = get_paca()->kvm_hstate.xics_<wbr>phys;<br>
> > +   preempt_enable();<br>
> > +<br>
> > +   if (!xics_phys) {<br>
> >             struct device_node *np;<br>
><br>
> Can you tell me what actual problem (other than the warning) this is<br>
> fixing?<br>
<br>
If paca->kvm_hstate.xics_phys is non-zero on one cpu, it will be<br>
non-zero on them all.  Therefore this is not fixing any actual<br>
problem, just the warning.<br>
<br>
By the way, the #ifdefs are ugly, and could be removed.  (Yes I know<br>
it was me that put the first #ifdef in that function.)<br>
<br>
Paul.<br>
</blockquote><div><br></div><div>Then we can replace get_paca with local_paca to avoid the warning, right? </div><br><br>-- <br>Regards / Mit besten Grüßen,<br>Denis<br><br>