Re: [RFC PATCH 03/10] PCI: properly clean up ASPM link state on device remove

Jesse Barnes
2009-02-05T00:38:22Z

On Wednesday, January 28, 2009 1:59 pm Alex Chiang wrote:
> We only want to disable ASPM when the last function is removed from
> the parent's device list. We determine this by checking to see if
> the parent's device list is completely empty.
>
> Unfortunately, we never hit that code because the parent is considered
> an upstream port, and never had an ASPM link_state associated with it.
>
> The early check for !link_state causes us to return early, we never
> discover that our device list is empty, and thus we never remove the
> downstream ports' link_state nodes.
>
> Instead of checking to see if the parent's device list is empty, we can
> check to see if we are the last device on the list, and if so, then we
> know that we can clean up properly.
>
> Cc: Shaohua Li <shaohua.li@intel.com>
> Signed-off-by: Alex Chiang <achiang@hp.com>

Applied to my for-linus branch, thanks. Let me know if you have a problem
with it (fast) Shaohua! :)

--
Jesse Barnes, Intel Open Source Technology Center