From owner-freebsd-hackers Tue Jul 8 13:21:20 1997 Return-Path: Received: (from root@localhost) by hub.freebsd.org (8.8.5/8.8.5) id NAA05968 for hackers-outgoing; Tue, 8 Jul 1997 13:21:20 -0700 (PDT) Received: from tornado.cisco.com (tornado.cisco.com [171.69.104.22]) by hub.freebsd.org (8.8.5/8.8.5) with ESMTP id NAA05956 for ; Tue, 8 Jul 1997 13:21:16 -0700 (PDT) Received: from bmcgover-pc.cisco.com (bmcgover-pc.cisco.com [171.69.104.147]) by tornado.cisco.com (8.8.5-Cisco.1/8.6.5) with ESMTP id QAA13217 for ; Tue, 8 Jul 1997 16:20:32 -0400 (EDT) Received: from bmcgover-pc.cisco.com (localhost.cisco.com [127.0.0.1]) by bmcgover-pc.cisco.com (8.8.5/8.8.5) with ESMTP id QAA00222 for ; Tue, 8 Jul 1997 16:20:20 -0400 (EDT) Message-Id: <199707082020.QAA00222@bmcgover-pc.cisco.com> To: hackers@freebsd.org Subject: PPP input processing problem (slowness) Date: Tue, 08 Jul 1997 16:20:19 -0400 From: Brian McGovern Sender: owner-hackers@freebsd.org X-Loop: FreeBSD.org Precedence: bulk I'm having a bit of a problem with my device driver when receiving PPP packets. I've taken a look at sio.c and read what I can find in the BSD 4.4 Implementation book (read - the Red Book), and I'm doing what I'm told I'm supposed to do. Obviously, I'm missing something :) Transmitting packets work fine, as does character mode. The problem appears in getting the system to process incoming packets. Basically, in my interrupt handler, I do EITHER move the bytes with b_to_q() to &tp->t_rawq OR use l_rint to move the bytes, one at a time. THEN call setsofttty(). I have no idea what this does, but the sio driver had it, so its here... :) call ttwakeup(); Also, based on what else happens during the interrupt cycle, wakeup(tp) and ttwwakeup(tp) can also get called. Any suggestions are welcome. -Brian