* Ard Biesheuvel <[email protected]> wrote:

> > More fundamentally, this makes me nervous:
> >
> >  > The UEFI spec allows Runtime Services to be invoked with interrupts 
> >  > enabled. [...]
> >
> > So what really matters is not what the spec says, but how Windows executes 
> > UEFI firmware code in practice.
> >
> > If major versions of Windows calls UEFI firmware with interrupts disabled, 
> > then frankly I don't think we should interrupt them under Linux either, 
> > regardless of what the spec says ...
> >
> > Random firmware code getting interrupted by the OS changes timings and 
> > might 
> > have other side effects the firmware code might not expect - so the 
> > question 
> > is, does Windows already de facto allow the IRQ preemption of firmware 
> > calls?
> >
> 
> Good question. I will try to find out.

Note that if there's a reasonable (but not 100%) case in favor of keeping irqs 
enabled, we can try your patch, with the possibility that we might have to 
revert 
it, should it cause problems.

In practice we probably already interrupt EFI services with NMI interrupts, 
which 
can be pretty heavy as well if they for example generate printks.

So I'm not against this change in a strong fashion - I'm just a bit cautious 
and 
it would be nice to know how Windows behaves here.

Thanks,

        Ingo

Reply via email to