Now
MAIN commitmail json YAML
- The Alpha fast-soft-intrs implementation supports 2 soft interrupt levels,
so in exception_return() ensure we clear ineligible-at-new-IPL softint
bits from the SSIR, otherwise we could loop forever in the following
scenario:
processing softnet -> clock interrupt -> schedule softclock
- If the softint thread blocks, it's possible to bounce back through
the softint return trampoline at something other than IPL_HIGH. This
is not a problem other than it's contrary to what alpha_softint_dispatch()
expect, so make alpha_softint_return() go to IPL_HIGH before it does
anything else.
These two fixes make fast-soft-interrupts work on Alpha.
so in exception_return() ensure we clear ineligible-at-new-IPL softint
bits from the SSIR, otherwise we could loop forever in the following
scenario:
processing softnet -> clock interrupt -> schedule softclock
- If the softint thread blocks, it's possible to bounce back through
the softint return trampoline at something other than IPL_HIGH. This
is not a problem other than it's contrary to what alpha_softint_dispatch()
expect, so make alpha_softint_return() go to IPL_HIGH before it does
anything else.
These two fixes make fast-soft-interrupts work on Alpha.