From owner-freebsd-hackers Thu Nov 13 19:03:51 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.7/8.8.7) id TAA18196 for hackers-outgoing; Thu, 13 Nov 1997 19:03:51 -0800 (PST) (envelope-from owner-freebsd-hackers) Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by hub.freebsd.org (8.8.7/8.8.7) with ESMTP id TAA18189 for ; Thu, 13 Nov 1997 19:03:48 -0800 (PST) (envelope-from bde@zeta.org.au) Received: (from bde@localhost) by godzilla.zeta.org.au (8.8.7/8.6.9) id OAA11983; Fri, 14 Nov 1997 14:01:41 +1100 Date: Fri, 14 Nov 1997 14:01:41 +1100 From: Bruce Evans Message-Id: <199711140301.OAA11983@godzilla.zeta.org.au> To: bde@zeta.org.au, mouth@ibm.net Subject: Re: Status of 650 UART support Cc: hackers@FreeBSD.ORG Sender: owner-freebsd-hackers@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >>>Why can't we handle large bursts of input? >> >>Buffer sizes are finite. > >Can't we use malloc to create elastic buffers on the fly? Is that a >no-no in the kernel? It is impossible to do in fast interrrupt handlers like siointr(), tricky to do in ordinary interrupt handlers, and not done any interrupt handlers except network ones (including ppp). >Why not start from scratch and develop siov2.c which uses elastic >buffers, 650 polled vs. interrupt mode switching, yada, yada, yada. High costs/benefits. It can't be made more than about 10% faster in that way on a reasonably fast CPU, since most of the overheads are for waiting for the ISA bus. Bruce