Valery V.Chikalov wrote:
> Hans Petter Selasky wrote:
> > On Sunday 29 April 2007 15:02, Valery V.Chikalov wrote:
> >> Kevin Lo wrote:
> >>> Valery V.Chikalov wrote:
> >>>> The following reply was made to PR usb/107642; it has been noted by
> >>>> GNATS.
> >>>>
> >>>> From: "Valery V.Chikalov" <[EMAIL PROTECTED]>
> >>>> To: [EMAIL PROTECTED],  [EMAIL PROTECTED]
> >>>> Cc:
> >>>> Subject: Re: usb/107642: [patch]Ralink Technology RT2501USB/RT2601USB
> >>>> chipset driver
> >>>> Date: Sun, 22 Apr 2007 11:32:18 +0300
> >>>>
> >>>>  This is a multi-part message in MIME format.
> >>>>  --------------030900090303000507070905
> >>>>  Content-Type: text/plain; charset=UTF-8
> >>>>  Content-Transfer-Encoding: 7bit
> >>>>
> >>>>  -----BEGIN PGP SIGNED MESSAGE-----
> >>>>  Hash: SHA1
> >>>>
> >>>>  if_rum(4) for 7.0-CURRENT
> >>>>
> >>>>  replaced amrr_* functions by "standard" ones already existed in
> >>>>  net80211/ieee80211_amrr.c
> >>>>
> >>>>  -----BEGIN PGP SIGNATURE-----
> >>>>  Version: GnuPG v1.4.5 (MingW32)
> >>>>  Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
> >>>>
> >>>>  iD8DBQFGKx14760S3kDvEC4RAn8PAKCn990QJE0wZRKcwdxAZ61MY0JRgACeI2W5
> >>>>  ZosSlh6pIqi7JdZ5Wi1BUYc=
> >>>>  =LvWZ
> >>>>  -----END PGP SIGNATURE-----
> >>> Hi Valery,
> >>>
> >>> I guess you wasn't aware that I've already ported rum(4) to FreeBSD.
> >>> The patch is available at: http://people.freebsd.org/~kevlo/patch-rum
> >>> Maybe you can test my patch? Thanks.
> >>>
> >>>   Kevin
> >> Hi, Kevin,
> >>
> >> Your driver not working for me. Fortunately, the errors that I see
> >> exactly the same which i fight when I made my driver.
> >>
> >> $ uname -a
> >> FreeBSD tiger.novakom.dp.ua 7.0-CURRENT FreeBSD 7.0-CURRENT #6: Sun Apr
> >> 29 13:58:48 EEST 2007
> >> [EMAIL PROTECTED]:/usr/obj/usr/src/sys/TIGER64  amd64
> >>
> >> $ sysctl kern.osreldate
> >> kern.osreldate: 700037
> >>
> >> cvsup'ed 29.04.2007
> >>
> >> kernel with:
> >>
> >> makeoptions     DEBUG=-g
> >>
> >> options         KDB
> >>
> >> options         DDB
> >>
> >>
> >>
> >> options         INVARIANTS
> >>
> >> options         INVARIANT_SUPPORT
> >>
> >> options         WITNESS
> >>
> >> At first, when I make kldload if_rum, I get kernel panic.
> >> But I cant get saved core, as ddb just hangs during "call doadump"
> >>
> > 
> > I have a solution for all of this locking stuff!
> > 
> >> So I add
> >>
> >> #define RUM_LOCK(sc)    do { ((sc) = (sc)); mtx_lock(&Giant); } while
> >> (0)
> >> #define RUM_UNLOCK(sc)  mtx_unlock(&Giant)
> >>
> >> in  if_rumvar.h
> >>
> >> I spend a lot of time in attempts get rid of Giant ant always got only
> >> panics.
> > 
> > You _cannot_ do that with the old USB stack, because you must lock Giant 
> > before calling into the usbxxx functions. Then in the USB callback, Giant 
> > is 
> > locked, and then you cannot lock RUM_LOCK()! That means you will most 
> > likely 
> > end up with a deadlock pretty soon, if you see that.
> > 
> 
> Thanks, for explanations. I suspected that thing are like that, and I 
> have tried make porting by analogue with other drivers which I can find 
> in dev/usb, but I was not can find the description of doing "right way" 
> locking before.

Firstly, thanks for taking the time to test my patch.
I think your issue is related to watchdog timers. The revised patch is
at http://people.freebsd.org/~kevlo/patch-rum

Besides, I don't get a panic during high load when getting a file about
400MB via ftp.

> >> After that I get hangs,
> >> which i resolved by modifying rum_ioctl:
> > 
> > I'm almost finished converting "if_rum.c()" to the new USB stack.
> > 
> > In some hours I will update it with support for "if_rum".
> > 
> > If you can test that and forget about the old USB stack, I will be very 
> > happy :-)
> >
> 
> I will do it with pleasure. I was almost ready to do it (converting to 
> new USB stack) by myself, but I was stopped by the fact that I cant make 
> it compiled under CURRENT. I have seen your mail that your are working 
> on this.  Is new the USB stack ready for CURRENT now?
> 
> Valery.
> 
> > --HPS
> > 
> > http://www.turbocat.net/~hselasky/usb4bsd

        Kevin

_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to