Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 17 Nov 2000 16:58:47 -0700 (MST)
From:      Nate Williams <nate@yogotech.com>
To:        Warner Losh <imp@village.org>
Cc:        nate@yogotech.com (Nate Williams), Steve Price <sprice@hiwaay.net>, Mark.Andrews@nominum.com, stable@FreeBSD.ORG
Subject:   Re: 4.2-BETA hangs on boot 
Message-ID:  <14869.50743.155975.171937@nomad.yogotech.com>
In-Reply-To: <200011172355.QAA78649@harmony.village.org>
References:  <14869.49927.736257.730814@nomad.yogotech.com> <20001117162836.N62344@bonsai.knology.net> <20001116204344.B62344@bonsai.knology.net> <20001116195957.A62344@bonsai.knology.net> <200011170209.eAH297q51130@drugs.dv.isc.org> <200011172203.PAA77619@harmony.village.org> <200011172237.PAA77876@harmony.village.org> <200011172355.QAA78649@harmony.village.org>

next in thread | previous in thread | raw e-mail | index | archive | help
> : FWIW, I switched *from* polling mode to IRQ mode in FreeBSD 2.2.X (can't
> : remember) for two reasons:
> : 
> : 1) suspend/resume works *much* more reliably.  (However, I ended up
> :    rewriting the suspend/resume code anyway).
> : 2) Too many folks complained that polling didn't work reliably.
> : 
> : However, I believe the second was related to the fact that there were
> : races in the polling code (which came from PAO), such that polling was
> : *always* being done, regardless of whether or not the IRQ was being
> : used.
> 
> Most of the races have been mostly fixed.  However, polling does open
> the window.

Some of the races are nearly impossible to fix (since they're really
hardware races).  Polling makes it the window *MUCH* bigger, but it
appears that it's rarely seen in practice, since most people remove
their hardware when it's idle.  (This is why the PAO folks added the
'power off' state for the cards, to avoid the hardware races, but it
still requres user intervention.)

> : Finally, stating the 'PAO' has done it for some time is not (IMO) a
> : great argument.  In the past, PAO has done lots of things incorrectly,
> : and that things worked at all was merely good luck.
> 
> This was more a "and lots of people have installed PAO3 and it doesn't
> seem to be a large problem" rather than any other statement.

*grin*

> : Polling 'should' work in all cases, although suspend/resume may not work
> : reliably (races and such).  If it doesn't work on Steve's laptop,
> : something is messed up with the PCIC probing/setup, since it should work
> : fine.
> 
> suspend/resume now detaches the cards on suspend, so polling shouldn't
> cause any races here.

This was one of the changes I did in the suspend/resume rewrite.  Prior
to this, suspend/resume worked about 25% of the time.  Afterward, it
worked about 90% of the time.

> : The biggest advantage for supporting 'polling by default' is the fact
> : that IRQ's are a precious commodity on newer hardware, and 'wasting' one
> : just for insertion/removal events seems a waste.
> 
> Agreed.  We have to do something for this in NEWCARD or I will go
> insane.
> 
> : (Steve, on a whim, is PnP turned *OFF* in your BIOS?)
> 
> You are the second person to suggest this.


Nate


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?14869.50743.155975.171937>