cvs commit: src/sys/dev/ep if_ep.c

Nate Lawson nate at root.org
Thu Jun 26 10:14:29 PDT 2003


On Thu, 26 Jun 2003, Maxime Henrion wrote:
>   Fix a race condition that was introduced since pccbb interrupts are
>   flag'ed INTR_MPSAFE.  In ep_if_start(), use the IF_DEQUEUE macro to
>   grab the next mbuf to send, and use IF_PREPEND if the card is busy
>   and we actually can't handle it right now.
>
>   The old code was first getting the mbuf by taking it from the queue
>   without using the macros, thus without locking, and without removing
>   it from the queue either.  It was later assuming that IF_DEQUEUE would
>   give him this same mbuf.
>
>   Tested by:      mich
>
>   Revision  Changes    Path
>   1.115     +5 -7      src/sys/dev/ep/if_ep.c

Nice debugging!  (bus(9) for this driver coming soon? :)

-Nate


More information about the cvs-all mailing list