NetBSD Problem Report #43159
From jakllsch@siwenna.kollasch.net Tue Apr 13 19:02:57 2010
Return-Path: <jakllsch@siwenna.kollasch.net>
Received: from mail.netbsd.org (mail.netbsd.org [204.152.190.11])
by www.NetBSD.org (Postfix) with ESMTP id E820B63B8BC
for <gnats-bugs@gnats.NetBSD.org>; Tue, 13 Apr 2010 19:02:56 +0000 (UTC)
Message-Id: <20100413190253.2CAE3106BB5@siwenna.kollasch.net>
Date: Tue, 13 Apr 2010 19:02:53 +0000 (UTC)
From: jakllsch@kollasch.net
Reply-To: jakllsch@kollasch.net
To: gnats-bugs@gnats.NetBSD.org
Subject: ugen(1) isoc data loss
X-Send-Pr-Version: 3.95
>Number: 43159
>Category: kern
>Synopsis: ugen(4) isoc highbandwidth data loss
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: kern-bug-people
>State: open
>Class: change-request
>Submitter-Id: net
>Arrival-Date: Tue Apr 13 19:05:00 +0000 2010
>Closed-Date:
>Last-Modified: Fri Jan 04 00:43:16 +0000 2013
>Originator: Jonathan A. Kollasch
>Release: NetBSD 5.0_STABLE
>Organization:
>Environment:
System: NetBSD siwenna.kollasch.net 5.0_STABLE NetBSD 5.0_STABLE (SIWENNA) #8: Mon Apr 12 17:52:44 UTC 2010 root@siwenna.kollasch.net:/local/siwenna/20100403/src/sys/arch/i386/compile/SIWENNA i386
Architecture: i386
Machine: i386
>Description:
ugen(4) isn't tuned to handle high bandwidth isochronous pipes.
>How-To-Repeat:
Use ugen(4) to read a 19+Mbit/s stream on a isochronous pipe,
note the missing data.
>Fix:
Maybe something like:
#define UGEN_NISOFRAMES 500
#define UGEN_NISOREQS 8
#define UGEN_NISORFRMS 32
or
#define UGEN_NISOFRAMES 250
#define UGEN_NISOREQS 6
#define UGEN_NISORFRMS 64
These parameters seem to result in a complete data set.
>Release-Note:
>Audit-Trail:
From: "Jonathan A. Kollasch" <jakllsch@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/43159 CVS commit: src/sys/dev/usb
Date: Tue, 27 Jul 2010 20:20:46 +0000
Module Name: src
Committed By: jakllsch
Date: Tue Jul 27 20:20:46 UTC 2010
Modified Files:
src/sys/dev/usb: ugen.c
Log Message:
Tune ugen(4) isochronous parameters to better support high speed pipes.
Fixes PR#43159.
Justification:
UGEN_NISORFRMS, previously 4, is now 8 because that's the number of
microframes per frame on a high speed bus. This allows data to be
transfered every microframe if necessary.
UGEN_NISOREQS, previously 6, is now 4. This is harder to justify,
but I didn't think the total number of buffer frames needed to be
much more than it was.
UGEN_NISOFRAMES, previously 500, is now (UGEN_NISORFRMS * UGEN_NISOREQS)
(32 with values as above). This is all the more we've actually used.
To generate a diff of this commit:
cvs rdiff -u -r1.109 -r1.110 src/sys/dev/usb/ugen.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
State-Changed-From-To: open->feedback
State-Changed-By: jakllsch@NetBSD.org
State-Changed-When: Mon, 02 Aug 2010 18:45:40 +0000
State-Changed-Why:
i want to test this one more time before closing
State-Changed-From-To: feedback->closed
State-Changed-By: jakllsch@NetBSD.org
State-Changed-When: Sun, 07 Aug 2011 19:29:01 +0000
State-Changed-Why:
Further testing shows that it's still a problem.
However, emdtv(4) now exists, so I don't care.
State-Changed-From-To: closed->suspended
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Mon, 08 Aug 2011 00:55:38 +0000
State-Changed-Why:
how about we not close bugs that aren't fixed? :(
State-Changed-From-To: suspended->open
State-Changed-By: dholland@NetBSD.org
State-Changed-When: Fri, 04 Jan 2013 00:43:16 +0000
State-Changed-Why:
Problem is not fixed.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.