au-ts / sddf

A collection of interfaces, libraries and tools for writing device drivers for seL4 that allow accessing devices securely and with low overhead.
Other
18 stars 14 forks source link

Remove interrupt disabling code on the IMX ethernet driver. #151

Closed Courtney3141 closed 3 months ago

Courtney3141 commented 3 months ago

This PR removes a fragment of code from an older version of sDDF that disables receive interrupts if the HW ring is empty, and re-enables them if it is non-empty.

I believe last year there was more interrupt switching on/off in the ethernet driver, but we don't use it any more. From experimentation it doesn't seem like this code is invoked, and if it were, it doesn't make much sense as we should not be receiving rx IRQs for incoming packets if the HW ring is empty, since there are no buffers available for the device to receive into.

I removed this code, and adjusted the surrounding code to account for the fact that we no longer change which IRQs are enabled during run-time (except for during initialisation).

To be sure that this did not effect performance, I re-benchmarked the IMX before and after and did not observe any differences in throughput or utilisation.