Open
Description
We have recently started testing OPAL flash writes from the host on Zaius and have seen issues with thread hangs, lost interrupts, IPMI timeouts, etc. while the flash write operation is in progress.
The opal_flash_{read,write,erase}
calls seem to be async operations and require a token but the actual implementation does all of the work before returning an async completion. Thus the thread performing the op seems to be "stuck" in skiboot the whole time and does not return to the kernel until the operation is finished which can take multiple seconds in the worst case.