On Wed, Apr 02, 2025, Frode Isaksen wrote:
On 4/2/25 6:42 AM, Krishna Kurapati wrote:
I still wonder what's current behavior of the HW to properly respond here. If the device is dead, register read often returns all Fs, which may be the case you're seeing here. If so, we should properly prevent the driver from accessing the device and properly teardown the driver.
If this is a momentary bleep/lost of power in the device, perhaps your change here is sufficient and the driver can continue to access the device.
With the difficulty of reproducing this issue, can you confirm that the device still operates properly after this change?
Unfortunately, I did not test this particular change of returning when ev count is invalid. I stress tested the change of copying only 4K [1], but didn't see any issue. I suspect we didn't hit the issue later again in the course of 14 day testing.
Regards, Krishna,
I have been running my fix for over a year with millions of Quest 3 devices, and no strange bugs caused by this has been seen. Without the fix, there were 1 to 2 crashes per week.
So I think it's safe to just return with IRQ_NONE when the count exceeds the event length.
Thanks for confirming.
Thinh