On Mon, Aug 20, 2018 at 3:56 PM Jérôme Duval <jerome.duval@xxxxxxxxx> wrote:
It's more likely a spurious interrupt, which triggers this task to be
run. It can't be a race condition, because adapter->ifp is initialized
in lem_setup_interface(), which is called after the task queue
creation and interrupt setup code (happening in lem_allocate_irq()).
If this driver is affected with this sequence, every driver doing the
same sequence is potentially affected.
Even in this driver, you fixed the problem in lem_handle_link(), but
there is the same in lem_handle_rxtx().
See for yourself the KDL screenshot
https://dev.haiku-os.org/attachment/ticket/14182/ipro1000_threads.png
showing the stacktrace of the thread 1743.