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

Greg KH
2009-02-08T21:18:48Z

On Wed, Feb 04, 2009 at 06:13:52PM -0700, Alex Chiang wrote:
> * Jesse Barnes <jbarnes@virtuousgeek.org>:
> > 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! :)
>
> Thanks Jesse.
>
> I'm cc'ing stable@kernel.org as well (which I should have done in
> the first place). This fixes a bug that existed since ASPM
> support was added (7d715a6c1), and git name-rev tells me that
> we've had it since 2.6.26.
>
> So this patch is a candidate for 2.6.27 and 2.6.28 stable
> branches.

Now queued up.

thanks,

greg k-h