Not going to argue against this being a firmware bug. I'm sure that is true. But Linux must deal with buggy firmware. Else it cannot run on any real system :-)
And this bug (or at least the bad effect on Linux) is a regression introduced by commit c3a696b6e8f8 ("ACPI / EC: Use busy polling mode when GPE is not enabled"), which again was an attempt to work around firmware bugs in other systems. This has been reported upstream, but AFAICS it is still only partially fixed. Ref the thread ending here: https://spinics.net/lists/stable/msg214463.html Bjørn