Date: Thu, 8 Feb 2001 17:02:05 -0800 (PST) From: Luigi Rizzo <rizzo@aciri.org> To: net@freebsd.org Subject: potential infinite loop in network device drivers Message-ID: <200102090102.f19125x06386@iguana.aciri.org>
next in thread | raw e-mail | index | archive | help
Hi, it occurs to me that there is a potential infinite loop in most if not all ethernet drivers. Basically, on a receive interrupt, such drivers loop around the status word until the receive queue is drained. If the body of the loop takes approx the same as the packet interarrival time, you might end up stuck in the loop forever (and typically holding locks or with most interrupts masked off). I would suggest that we slightly redesign such loops so that we limit the amt of time spent in them. This probably affects only 100M/1G interfaces these days, but still... cheers luigi ----------------------------------+----------------------------------------- Luigi RIZZO, luigi@iet.unipi.it . ACIRI/ICSI (on leave from Univ. di Pisa) http://www.iet.unipi.it/~luigi/ . 1947 Center St, Berkeley CA 94704 Phone: (510) 666 2927 ----------------------------------+----------------------------------------- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-net" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200102090102.f19125x06386>