Date: Sat, 4 Dec 2004 08:46:20 +0100 (CET) From: Barry Bouwsma <freebsd-misuser@remove-NOSPAM-to-reply.NOSPAM.dyndns.dk> To: freebsd-usb@freebsd.org Subject: Re: USB Ethernet (aue) panics on 4.10 (kern/69319) Message-ID: <200412040746.iB47kJ802176@Mail.NOSPAM.DynDNS.dK> References: <20041115000815.GD57138@tuatara.fishballoon.org> <200412011419.iB1EJDs10868@Mail.NOSPAM.DynDNS.dK> <20041201161615.GA523@tuatara.fishballoon.org> <200412012104.iB1L4s313837@Mail.NOSPAM.DynDNS.dK> <20041202000831.GC523@tuatara.fishballoon.org> <41B0C4A3.9080308@elischer.org> <20041203222253.GA68061@tuatara.fishballoon.org>
next in thread | previous in thread | raw e-mail | index | archive | help
[if you get bounces, you may ignore them, as the hostname part of my address makes it IPv6-only, and I download the archives regularly] Julian Elischer done did sayed: > > >I'm overjoyed to report that your patches to if_aue and its ilk > > >(and uhbdi-whatnot) are what I needed to get if_axe working, whee > > > > > If you can generate good unified diffs > > I can commit them for you. Not quite diffs yet, but I cleaned up most of the foolishness and my ignorance from the previous hacks, and based on yesterday morning's current, made a cleaner if_axe.c file that can be found as https://nospam.dyndns.dk/hacks/if_axe.c-clean-against-latest-current (should also be available without SSL -- except when I'm panicking my machine or running single-user, so try later) The reason my #if's are as ugly as they are in this, is that I'm special-casing FreeBSD4 here, leaving open the possibility to merge in DragonFly, NetBSD, and OpenBSD code in the future for the fun of it. In the testing I've done so far, I can say that it works splendidly with my OHCI controller. As an aside, I mentioned data corruption I had observed a while back with OHCI; it seems this is introduced by the usb.diff patch that Ian Dowse put out for -current-ish, which is what I had been using at that time. As soon as I merged in the latest usb.diff, I heard and saw data corruption. I had already merged in the usb2_sync.diff and usb_race.diff with no noted ill effects. Hmmm... It also sorta works with EHCI, but not as well for me as with OHCI. I get watchdog timeouts for some outgoing packets. It still works though, as I'm using EHCI now to send this mail (and download the archive I'm replying to). But for some reason, my machine gets noticeably more sluggish with EHCI than OHCI. (75MHz Pentium so I can see a difference from tree sloth to garden slug.) The usb.diff patch mentioned above didn't improve things that I could see. With my hardware, UHCI has the problem with my adapter that is mentioned in kern/73000 when the device is connected, and I see a bogus MAC address; however, applying the patch in this PR does not make any difference for me. So I haven't been able to test it with UHCI. That controller needs much more work and testing from me to see what's normal for it on this machine, as it worked flawlessly on another machine I was using except for attaching this adapter. I haven't bothered with a man page, or cleaning up the Makefile for the kernel module, or the .h file -- nor have I tried to figure out how to properly incorporate these into a build in the kernel and modules. I hope these things are trivial enough for someone with experience to do them while half asleep, while I play around with the if_axe.c file and the rest of my USB stack to work on the problems I've noted. I really would like someone else with this hardware but different controller chips (and a different motherboard) to try and see if I'm imagining the above, or if my limitation of one type of box is causing what I see. Perhaps I should ask this in -stable? -hackers? -hardware? -mobile? -questions? -newbies? Scott Mitchell up'n done did scrawled out like so: > I can look at this if you like. It should be pretty straighforward, but I > want to make sure it works on a stock 4-stable box, since Barry seems to be > running a slightly unusual USB stack... I'm sort of figuring out what I have, in the process of working towards 4-ish-ness while trying not to break things that had been broken months ago for me. I think my uhci.c and ohci.c and ehci.c are mostly the latest from 4.x with a few things tossed in due to leftovers from previously applying Ian Dowse's Big Diff. Give me time and I'll start clean, then try usb2_sync.diff and usb_race.diff (that so far don't give me problems). As an aside, should I expect to experience problems with clean 4.x source and the above three diffs from Ian? If not, then I'll see if I can figure out the cause of the OHCI corruption that occurs with the Big Diff (makes no difference with the OHCI isoc problem, though) -- and perhaps I should mention this machine has only 40MB RAM in case that may have anything to do with anything. thanks barry bouwsma
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200412040746.iB47kJ802176>