You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When issuing an ata/atapi read/write, the ata driver should generally call process_wait() to wait for an interrupt to arrive. However, on "fast" virtual hardware, the interrupt is often delivered even before process_wait() has been called. Hence, the current code has these waits commented out, and just does a busy-wait on drive status.
Fix the race condition by blocking interrupts in the critical section, so that we can properly handle "slow" real hardware without busy waiting.
See PR #72 for an instance of the problem and PR #82 for the temporary workaround.
The text was updated successfully, but these errors were encountered:
When issuing an ata/atapi read/write, the ata driver should generally call process_wait() to wait for an interrupt to arrive. However, on "fast" virtual hardware, the interrupt is often delivered even before process_wait() has been called. Hence, the current code has these waits commented out, and just does a busy-wait on drive status.
Fix the race condition by blocking interrupts in the critical section, so that we can properly handle "slow" real hardware without busy waiting.
See PR #72 for an instance of the problem and PR #82 for the temporary workaround.
The text was updated successfully, but these errors were encountered: