Received: by oss.sgi.com id ; Sun, 2 Apr 2000 09:36:06 -0700 Received: from minus.inr.ac.ru ([193.233.7.97]:27914 "HELO ms2.inr.ac.ru") by oss.sgi.com with SMTP id ; Sun, 2 Apr 2000 09:35:40 -0700 Received: (from kuznet@localhost) by ms2.inr.ac.ru (8.6.13/ANK) id UAA06582; Sun, 2 Apr 2000 20:34:18 +0400 From: kuznet@ms2.inr.ac.ru Message-Id: <200004021634.UAA06582@ms2.inr.ac.ru> Subject: Re: Queue and SMP locking discussion (was Re: 3c59x.c) To: becker@scyld.COM (Donald Becker) Date: Sun, 2 Apr 2000 20:34:18 +0400 (MSK DST) Cc: netdev@oss.sgi.com In-Reply-To: from "Donald Becker" at Apr 1, 0 10:13:09 pm X-Mailer: ELM [version 2.4 PL24] MIME-Version: 1.0 Content-Length: 913 Sender: owner-netdev@oss.sgi.com Precedence: bulk Return-Path: X-Orcpt: rfc822;netdev-outgoing Hello! > Just queuing the packet in netif_rx() *should* take minimal extra work, and > have minimal cache impact. Dropping the packet because the queue layer is > full should take even less work. It is true, it does not take any time. But we need not this. We need to do some work in the worst conditions, rather then to serve as perfect blackhole. Linux as it is, is perfect blackhole. We need that driver leaved us some time for packet processing. Not all the OS exists to serve driver, but driver exists to allow this OS to do some useful work. Look at HW_FLOWCONTROL, by the way. It is crappy, but it is real move, rather than useless talks. And it really works at least, when process context is not involved (i.e. forwarding). > I think that some people have been making the assumption that it's the > driver itself that is slow.. And some people avoid to assume anything before profiling. 8) Alexey