[Devel] Re: [PATCH] pci_get_device call from interrupt in reboot fixups
Denis V. Lunev
den at sw.ru
Mon Aug 6 00:16:20 PDT 2007
Greg KH wrote:
> On Fri, Aug 03, 2007 at 02:39:24PM +0400, Denis V. Lunev wrote:
>> The following calltrace is possible now:
>> handle_sysrq
>> machine_emergency_restart
>> mach_reboot_fixups
>> pci_get_device
>> pci_get_subsys
>> down_read
>> The patch obtains PCI device during initialization to avoid bothering PCI
>> search engine in interrupt. Devices used in this code are not supposed to
>> be pluggable, so it looks safe to keep them.
>
> What devices are supposed to be affected here? Are you sure that they
> can't be removed later? Grabbing references here might mess with them
> in the future.
Right now the list is the following:
static struct device_fixup fixups_table[] = {
{ PCI_VENDOR_ID_CYRIX, PCI_DEVICE_ID_CYRIX_5530_LEGACY,
cs5530a_warm_reset },
{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_CS5536_ISA, cs5536_warm_reset },
};
Though, if the approach is not suitable, we can skip fixups if we came
from sysrq.
Regards,
Den
More information about the Devel
mailing list