cvs commit: src/sys/dev/bge if_bge.c

John Baldwin jhb at FreeBSD.org
Fri Sep 30 07:17:38 PDT 2005


On Thursday 29 September 2005 03:44 pm, Nate Lawson wrote:
> John Baldwin wrote:
> > On Thursday 29 September 2005 01:49 pm, Nate Lawson wrote:
> >>John Baldwin wrote:
> >>>On Wednesday 28 September 2005 04:36 pm, Nate Lawson wrote:
> >>>>I've heard disabling apic helps T42s, otherwise they get a hard hang.
> >>>>It's difficult to print the driver progress while suspending because
> >>>> the function call stack is recursive, not iterative.  For example,
> >>>> root_suspend -> pci_suspend -> fxp_suspend -> mii_suspend (if that
> >>>> exists).  You'd have to add a printf in every driver and bus.  A
> >>>> better way might be to add printf or KTR to bus_generic_suspend() to
> >>>> print the device name before calling its method.
> >>>>
> >>>>BTW, I'm working on committing a patch that adds KTR to acpi so we can
> >>>>track down issues like this although the device suspending stuff should
> >>>>be done separately as listed above.
> >>>
> >>>BTW, the issue with APIC on some systems is that when we use the APIC,
> >>>the current code doesn't end up doing suspend/resume for the ATPIC and
> >>> so it ends up in some random state.
> >>
> >>Ah, is a fix for that upcoming?  :)
> >
> > It's in my head.  I think I need to rework the suspend/resume support in
> > the x86 interrupt code to instead of doing all the interrupt sources,
> > having the atpic and apic code register pic devices in a separate list
> > that gets iterated on suspend and resume.
>
> I think that makes sense since they have different programming methods.
>   Does it make sense to separate them into different newbus devices as
> well, so you get proper ordering?

Getting interrupt controllers into new-bus is a far-off goal I think.  It 
needs all that multipass stuff in place first.

-- 
John Baldwin <jhb at FreeBSD.org>  <><  http://www.FreeBSD.org/~jhb/
"Power Users Use the Power to Serve"  =  http://www.FreeBSD.org


More information about the cvs-all mailing list