On Mon, 2024-03-04 at 09:44 +0100, Christian Borntraeger wrote: > > > Am 04.03.24 um 09:35 schrieb David Hildenbrand: > > On 01.03.24 21:43, Eric Farman wrote: > > > It's possible that SIE exits for work that the host needs to > > > perform > > > rather than something that is intended for the guest. > > > > > > A Linux guest will ignore this intercept code since there is > > > nothing > > > for it to do, but a more robust solution would rewind the PSW > > > back to > > > the SIE instruction. This will transparently resume the guest > > > once > > > the host completes its work, without the guest needing to process > > > what is effectively a NOP and re-issue SIE itself. > > > > I recall that 0-intercepts are valid by the architecture. Further, > > I recall that there were some rather tricky corner cases where > > avoiding 0-intercepts would not be that easy. Any chance you recall any details of those corner cases? I can try to chase some of them down. > > > > Now, it's been a while ago, and maybe I misremember. SoI'm trusting > > people with access to documentation can review this. > > Yes, 0-intercepts are allowed, and this also happens when LPAR has an > exit. >From an offline conversation I'd had some months back: """ The arch does allow ICODE=0 to be stored, but it's supposed to happen only upon a host interruption -- in which case the old PSW is supposed to point back at the SIE, to resume guest execution if the host should LPSW oldPSW. """ > So this patch is not necessary, the question is if this would be an > valuable optimization? It's a reasonable question. I don't think I have a reasonable way of measuring the exit, though. :/