Some recent change last week causes pci_update_resource()
to be invoked on sparc64 now, and this is why my workstation
couldn't cleanly boot into current 2.6.13 when I tried to
remotely try out some new kernels while I was in the UK.

This thing is supposed to only be invoked if you support
power management, and therefore we made it just BUG() on
sparc64.

But some change last week causes it to be invoked when
the radeonfb driver registers a device, and that's why
my workstation failed to boot up current 2.6.13 kernels.

pci_restore_bars() is the only invoker of pci_update_resource()
and that should only be invoked by pci_set_power_state() if
the local variable "need_restore" is set, which occurs if

        if (dev->current_state >= PCI_D3hot) {
                if (!(pmcsr & PCI_PM_CTRL_NO_SOFT_RESET))
                        need_restore = 1;

and I don't see how that can happen to my radeon which is
fully operational when the kernel boots and the radeon device
is registered.

I'm tempted to just make pci_update_resource() not BUG() any
longer, but that definitely feels like the wrong way to fix
this.  And in any event, I'd like to get this fixed before
2.6.13 goes out the door.

Does anyone have a clue what change made last week could have
made this start happening?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to