[haiku-commits] Re: haiku: hrev52250 - src/add-ons/kernel/drivers/network/ipro1000/dev/e1000

  • From: Jérôme Duval <jerome.duval@xxxxxxxxx>
  • To: haiku-commits@xxxxxxxxxxxxx
  • Date: Mon, 20 Aug 2018 21:56:01 +0200

Le lun. 20 août 2018 à 17:16, waddlesplash <waddlesplash@xxxxxxxxx> a écrit :

if it does (as it does here) it's only due to a race condition. I
imagine that it could potentially hide other bugs by applying the fix
there, so I chose this route instead, as this pretty clearly is a
driver bug.

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.

Bye,
Jérôme

Other related posts: