Re: [PATCH 2/2] ACPI: PCI Interrupt Links -- disable when unused

Yinghai Lu
2008-12-19T11:57:24Z

On Fri, Dec 19, 2008 at 1:33 AM, Len Brown <lenb@kernel.org> wrote:
> From: Len Brown <len.brown@intel.com>
> Organization: Intel Open Source Technology Center
>
> We start the system off with disabled links.
> Here we enable the reference counting
> on the links so that when drivers free IRQs
> the links can return to the disabled state.
>
> Drivers free their IRQ and reference on a link
> when they unload. They may also do so upon
> suspend. However, if they don't, irqrouter_resume()
> will still resume any links that were
> not disabled before suspend.
>
> Signed-off-by: Len Brown <len.brown@intel.com>
> ---
> Hmmm, look like I confused git-rebase on that one,
> here it is again...
>
> thanks,
> -Len
> ---
> drivers/acpi/pci_link.c | 11 -----------
> 1 files changed, 0 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
> index 595b131..0f7722d 100644
> --- a/drivers/acpi/pci_link.c
> +++ b/drivers/acpi/pci_link.c
> @@ -693,18 +693,7 @@ int acpi_pci_link_free_irq(acpi_handle handle)
> printk(KERN_ERR PREFIX "Link isn't initialized\n");
> return -1;
> }
> -#ifdef FUTURE_USE
> - /*
> - * The Link reference count allows us to _DISable an unused link
> - * and suspend time, and set it again on resume.
> - * However, 2.6.12 still has irq_router.resume
> - * which blindly restores the link state.
> - * So we disable the reference count method
> - * to prevent duplicate acpi_pci_link_set()
> - * which would harm some systems
> - */
> link->refcnt--;
> -#endif
> ACPI_DEBUG_PRINT((ACPI_DB_INFO,
> "Link %s is dereferenced %d\n",
> acpi_device_bid(link->device), link->refcnt));
> --

maybe could have one switch in /proc so could not disable that for
some kexec path...

YH