lkml.org 
[lkml]   [1999]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: timer_bh behaviour incorrect for 2.2.13?
On Thu, 9 Dec 1999, Benjamin C.R. LaHaise wrote:

> __cli();
> hardirq_endlock(cpu);
>+ softirq_endlock(cpu);
>+
>+ /*
>+ * Avoid the race by checking if any bottom halves
>+ * are active after releasing all locks. This is a
>+ * rare race, but should inexpensive to check. -bcrl
>+ */
>+ rmb();
>+ if (get_active_bhs() & left)
>+ goto again;
>+ return;

rmb() should be replaced with mb() (SMP race).

About the design it doesn't solve anything as you still wait 10msec for a
net_bh() if you get a secondary nested network irq in the middle of the bh
processing. You run net_bh at max one time per loop so you still can
return with NET_BH marked as with 2.2.14pre12.

Andrea



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:55    [W:0.068 / U:0.280 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site