Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
common/cnxk: fix race condition between up and down mailbox
Fixing a possible case for race condition where an up mbox interrupt over writes the down mbox message. Although mbox_wait_for_zero() makes sure no up/down message is pending before raising an up mbox interrupt. But there is a small window were a VF may send a down mbox request to PF after mbox_wait_for_zero() and before PF attempts to send a up message to same VF. In such scenario interrupt register which has down message bit set will get overwritten by up message bit. As a solution, read interrupt register and OR the status with required up/down bit before writing to the interrupt register. Fixes: fa4ee2d ("common/cnxk: sync between mbox up and down messages") Cc: [email protected] Signed-off-by: Harman Kalra <[email protected]>
- Loading branch information