From owner-freebsd-isdn@FreeBSD.ORG Fri Aug 27 20:45:07 2004 Return-Path: Delivered-To: freebsd-isdn@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id CB22216A4CE for ; Fri, 27 Aug 2004 20:45:07 +0000 (GMT) Received: from peedub.jennejohn.org (Ge295.g.pppool.de [80.185.226.149]) by mx1.FreeBSD.org (Postfix) with ESMTP id 10CD743D3F for ; Fri, 27 Aug 2004 20:45:07 +0000 (GMT) (envelope-from garyj@www.jennejohn.org) Received: from www.jennejohn.org (localhost [127.0.0.1]) by peedub.jennejohn.org (8.13.1/8.11.6) with ESMTP id i7RKj5lC031614; Fri, 27 Aug 2004 22:45:05 +0200 (CEST) (envelope-from garyj@www.jennejohn.org) Message-Id: <200408272045.i7RKj5lC031614@peedub.jennejohn.org> X-Mailer: exmh version 2.7.0 06/18/2004 with nmh-1.0.4 To: msch@snafu.de In-Reply-To: Message from Matthias Schuendehuette of "Sat, 21 Aug 2004 19:27:36 +0200." <200408211927.36948.msch@snafu.de> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 27 Aug 2004 22:45:05 +0200 From: Gary Jennejohn cc: freebsd-isdn@FreeBSD.org Subject: Re: ISDN4BSD broken... X-BeenThere: freebsd-isdn@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Using ISDN with FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Aug 2004 20:45:07 -0000 Matthias Schuendehuette writes: > Hi, > > there's still no change with 5.3-BETA1 :-( > A commit was just made to -current which may have fixed this. Here's the commit message for those who don't get the commit mails. andre 2004-08-27 18:33:08 UTC FreeBSD src repository Modified files: sys/dev/hfa fore_receive.c sys/dev/idt idt_harp.c sys/dev/ppbus if_plip.c sys/i4b/driver i4b_ipr.c sys/net if_loop.c if_ppp.c if_sl.c if_spppsubr.c netisr.c rtsock.c sys/netgraph/atm/atmpif ng_atmpif_harp.c sys/netinet ip_mroute.c sys/netinet6 ah_input.c esp_input.c sys/netipsec ipsec_input.c xform_ipip.c Log: Apply error and success logic consistently to the function netisr_queue() and its users. netisr_queue() now returns (0) on success and ERRNO on failure. At the moment ENXIO (netisr queue not functional) and ENOBUFS (netisr queue full) are supported. Previously it would return (1) on success but the return value of IF_HANDOFF() was interpreted wrongly and (0) was actually returned on success. Due to this schednetisr() was never called to kick the scheduling of the isr. However this was masked by other normal packets coming through netisr_dispatch() causing the dequeueing of waiting packets. PR: kern/70988 Found by: MOROHOSHI Akihiko MFC after: 3 days --- Gary Jennejohn / garyj[at]jennejohn.org gj[at]freebsd.org gj[at]denx.de