From owner-freebsd-usb@FreeBSD.ORG Wed Jan 10 12:12:32 2007 Return-Path: X-Original-To: freebsd-usb@freebsd.org Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 023AD16A55F for ; Wed, 10 Jan 2007 12:12:32 +0000 (UTC) (envelope-from jhs@flat.berklix.net) Received: from thin.berklix.org (thin.berklix.org [194.246.123.68]) by mx1.freebsd.org (Postfix) with ESMTP id 8CAE613C467 for ; Wed, 10 Jan 2007 12:12:31 +0000 (UTC) (envelope-from jhs@flat.berklix.net) Received: from js.berklix.net (p549A7149.dip.t-dialin.net [84.154.113.73]) (authenticated bits=128) by thin.berklix.org (8.12.11/8.12.11) with ESMTP id l0ACCSMR042372; Wed, 10 Jan 2007 13:12:29 +0100 (CET) (envelope-from jhs@flat.berklix.net) Received: from fire.jhs.private (fire.jhs.private [192.168.91.41]) by js.berklix.net (8.13.6/8.13.6) with ESMTP id l0ACCQlj027374; Wed, 10 Jan 2007 13:12:27 +0100 (CET) (envelope-from jhs@flat.berklix.net) Received: from fire.jhs.private (localhost.jhs.private [127.0.0.1]) by fire.jhs.private (8.13.6/8.13.6) with ESMTP id l0ACCQfs050519; Wed, 10 Jan 2007 13:12:26 +0100 (CET) (envelope-from jhs@fire.jhs.private) Message-Id: <200701101212.l0ACCQfs050519@fire.jhs.private> To: Atom Smasher In-reply-to: <200701100112.l0A1C2Qx046748@fire.jhs.private> References: <200701100112.l0A1C2Qx046748@fire.jhs.private> Comments: In-reply-to "Julian Stacey" message dated "Wed, 10 Jan 2007 02:12:02 +0100." Date: Wed, 10 Jan 2007 13:12:26 +0100 From: "Julian H. Stacey" Cc: freebsd-usb@freebsd.org Subject: Re: usb/107701: usbd ignores "detach" X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 10 Jan 2007 12:12:32 -0000 People may have missed this ( hidden under a repost, sorry). I can reproduce on 6.1-RELEASE error seen by Atom Smasher > Loads of people Should have stumbled on this. > I've found the bug in the code. > This diff just marks the bug. > > *** /host/fire/usr/src/usr.sbin/usbd/usbd.c Fri Jul 1 17:49:52 2005 > --- usbd.c Wed Jan 10 01:54:54 2007 > *************** > *** 879,886 **** > --- 879,891 ---- > > devinfo = &events.u.ue_device; > for (i = 0; i < USB_MAX_DEVNAMES; i++) { > + printf(" \nJHS1\n" ); > if (devinfo->udi_devnames[i][0] == '\0') > break; > + /* This break is a problem it prevents > + USB_EVENT_IS_DETACH being run at JHS3 > + */ > + printf(" \nJHS2\n" ); > > memcpy(&the_event, &events, sizeof(the_event)); > the_devinfo = &the_event.u.ue_device; > *************** > *** 925,930 **** > --- 930,936 ---- > if (USB_EVENT_IS_ATTACH(the_event.ue_type) && > action_match.action->attach) > execute_command(action_match.action->attach); > + printf(" \nJHS3\n" ); > if (USB_EVENT_IS_DETACH(the_event.ue_type) && > action_match.action->detach) > execute_command(action_match.action->detach); > > > The error is still there in 6-Stable too. > There is no src/usr.sbin/usbd/usbd.c in current. > I don't know the code, & too tired & busy to fix this, > Someone else here able to fix it & post a patch ? > If not, Atom Smasher please use > send-pr to report this identified bug. -- Julian Stacey. BSD Unix C Net Consultancy, Munich/Muenchen http://berklix.com Mail Ascii, not HTML. Ihr Rauch = mein allergischer Kopfschmerz. http://berklix.org/free-software