From owner-freebsd-mips@FreeBSD.ORG Fri Apr 1 18:09:36 2011 Return-Path: Delivered-To: mips@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id DEA2C1065670 for ; Fri, 1 Apr 2011 18:09:36 +0000 (UTC) (envelope-from aduane@juniper.net) Received: from exprod7og113.obsmtp.com (exprod7og113.obsmtp.com [64.18.2.179]) by mx1.freebsd.org (Postfix) with ESMTP id 53E7E8FC08 for ; Fri, 1 Apr 2011 18:09:36 +0000 (UTC) Received: from source ([66.129.224.36]) (using TLSv1) by exprod7ob113.postini.com ([64.18.6.12]) with SMTP ID DSNKTZYU315SK54TpkD0aKgBvSLrORfQwc6s@postini.com; Fri, 01 Apr 2011 11:09:36 PDT Received: from p-emfe02-wf.jnpr.net (172.28.145.25) by P-EMHUB03-HQ.jnpr.net (172.24.192.37) with Microsoft SMTP Server (TLS) id 8.2.254.0; Fri, 1 Apr 2011 11:07:19 -0700 Received: from EMBX01-WF.jnpr.net ([fe80::1914:3299:33d9:e43b]) by p-emfe02-wf.jnpr.net ([fe80::c126:c633:d2dc:8090%11]) with mapi; Fri, 1 Apr 2011 14:08:54 -0400 From: Andrew Duane To: "mips@freebsd.org" Date: Fri, 1 Apr 2011 14:08:07 -0400 Thread-Topic: Blatant simple bug in Cavium SDK USB code? Thread-Index: AQHL8JY4dh+1a5sMXUirJ/xJKmTjLJRJTlXE Message-ID: References: In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: acceptlanguage: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: Subject: Blatant simple bug in Cavium SDK USB code? X-BeenThere: freebsd-mips@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to MIPS List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Apr 2011 18:09:36 -0000 In the routine cvmx_usb_initialize in sys/contrib/octeon-sdk/cvmx-usb.c, I'= m pretty sure there's a silly little bug that really BADLY breaks the USB d= river for some of us. Near the top, after it finds board type and sets the clock type, as part of= the structure initialization, there is: memset(usb, 0, sizeof(usb)); Tell me that is not supposed to be: memset(usb, 0, sizeof(*usb)); The existing code only zeros 4/8 bytes, instead of the 23KB of the structur= e. -- Andrew Duane Juniper Networks 978-589-0551 10 Technology Park Dr aduane@juniper.net Westford, MA 01886-3418