From: David Miller <davem@davemloft.net>
To: bhelgaas@google.com
Cc: James.Bottomley@hansenpartnership.com, linux-pci@vger.kernel.org,
linux-arch@vger.kernel.org, linux-kernel@vger.kernel.org,
jbarnes@virtuousgeek.org
Subject: Re: [PATCH v2 00/29] Create PCI root buses with correct resources
Date: Thu, 22 Dec 2011 14:56:29 -0500 (EST) [thread overview]
Message-ID: <20111222.145629.505018474228371646.davem@davemloft.net> (raw)
In-Reply-To: <20111222.141537.1513319029738355747.davem@davemloft.net>
From: David Miller <davem@davemloft.net>
Date: Thu, 22 Dec 2011 14:15:37 -0500 (EST)
> It looks like populate_msi_sysfs() is where these kobjects are
> supposed to be initialized.
Ok, it looks like we violate the invariant the free_msi_irqs() should
only be invoked after populate_msi_sysfs() has successfully been run.
For example, in msix_capability_init(), if arch_setup_msi_irqs() fails
we will branch to "error" and do free_msi_irqs().
free_msi_irqs() unconditionally does puts on the MSI entry kobjects,
but we haven't initialized them in populate_msi_sysfs() and thus we
get the warnings.
Even if we did execute populate_msi_sysfs(), if that function
encountered an error part way through the MSI entry list, we'll still
hit this kobject_put() warning for the MSI entrys we did not process
and init.
In my case arch_setup_msi_irqs() is failing simply because MSI has
not been enabled on these PCI host bridges. It should, and I'm
trying to figure out if this is some strange interaction with the
new resource code.
But this is independent of the above bugs that can result in erroneous
kobject puts.
next prev parent reply other threads:[~2011-12-22 19:56 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20111014042142.23504.70417.stgit@bhelgaas.mtv.corp.google.com>
[not found] ` <1318605254.3018.20.camel@dabdike.int.hansenpartnership.com>
[not found] ` <CAErSpo7d3hHeJU87zYo=yJoG3eqOZ4QggkOyNnu7xuJe8oG9Qg@mail.gmail.com>
[not found] ` <1318607132.3018.30.camel@dabdike.int.hansenpartnership.com>
2011-12-20 15:55 ` [PATCH v2 00/29] Create PCI root buses with correct resources Bjorn Helgaas
2011-12-22 18:59 ` David Miller
2011-12-22 19:15 ` David Miller
2011-12-22 19:56 ` David Miller [this message]
2011-12-22 22:02 ` David Miller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20111222.145629.505018474228371646.davem@davemloft.net \
--to=davem@davemloft.net \
--cc=James.Bottomley@hansenpartnership.com \
--cc=bhelgaas@google.com \
--cc=jbarnes@virtuousgeek.org \
--cc=linux-arch@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).