From owner-freebsd-hackers Thu Jun 29 15:43:51 2000 Delivered-To: freebsd-hackers@freebsd.org Received: from portnoy.lbl.gov (portnoy.lbl.gov [131.243.2.11]) by hub.freebsd.org (Postfix) with ESMTP id A2ED637C2A9 for ; Thu, 29 Jun 2000 15:43:45 -0700 (PDT) (envelope-from jin@portnoy.lbl.gov) Received: (from jin@localhost) by portnoy.lbl.gov (8.10.0/8.10.0) id e5TMhim19889 for hackers@freebsd.org; Thu, 29 Jun 2000 15:43:44 -0700 (PDT) Date: Thu, 29 Jun 2000 15:43:44 -0700 (PDT) From: Jin Guojun (DSD staff) Message-Id: <200006292243.e5TMhim19889@portnoy.lbl.gov> To: hackers@freebsd.org Subject: possible doing context switch between network and link layers? Sender: owner-freebsd-hackers@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG Hi, Try to control the NIC output, instead of dropping the packet, I would like to do context switch on current sending process. tsleep() seems not to be a right mechanism for this purpose because it will panic in the kernel wherever between the network and link layers the tsleep() is put -- e.g. ether_output() { ... if (IF_QFULL) { tsleep(m, PSOCK, "pause NIC", 1); if (IF_QFULL) DROP_Q; } ... } Is there other context switch mechanism for this purpose? or is it impossible to do the context switch at network and link layers? -Jin To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message