linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Alexander Gordeev <agordeev@redhat.com>
Cc: Michael Ellerman <michael@ellerman.id.au>,
	Benjamin Herrenschmidt <benh@kernel.crashing.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"x86@kernel.org" <x86@kernel.org>,
	"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	"linux-ide@vger.kernel.org" <linux-ide@vger.kernel.org>,
	Ingo Molnar <mingo@kernel.org>, Joerg Roedel <joro@8bytes.org>,
	Jan Beulich <JBeulich@suse.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v2 2/6] PCI/MSI: Factor out pci_get_msi_cap() interface
Date: Fri, 20 Sep 2013 07:26:03 -0500	[thread overview]
Message-ID: <20130920122603.GC7630@mtj.dyndns.org> (raw)
In-Reply-To: <20130918165045.GB2353@dhcp-26-207.brq.redhat.com>

Hello,

On Wed, Sep 18, 2013 at 06:50:45PM +0200, Alexander Gordeev wrote:
> Actually, I do not see much contradiction with what I proposed. The
> key words here "determine the number of MSIs the controller wants".
> 
> In general case it is not what pci_msix_table_size() returns (or at
> least we should not limit ourselves to it) - there could be non-
> standard means to report number of MSIs: hardcoded, version-dependant,
> device-specific registers etc.
> 
> Next, if we opt to determine the number of MSIs by non-MSI standard
> means then there is no reason not to call pci_get_msix_limit() (or
> whatever) at this step.

Yeah, that's all fine.  My point is that we shouldn't try to use
"degraded" multiple MSI mode where the number of MSIs allocated is
smaller than performing full multiple MSI operation.  How that number
is determined doesn't really matter but that number is a property
which is solely decided by the device driver, right?  If a device
needs full multiple MSI mode, given specific configuration, it needs
>= X number of MSIs and that's the number it should request.

> Being Captain Obvious here, but it is up to the device driver to handle
> a failure. There could be no such option as single MSI mode after all :)

I don't think there actually is a mainstream device which can't
fallback to single interrupt.  Anyways, the point is the same, let's
please not try to create an interface which encourages complex retry
logic in its users which are likely to involve less traveled and
tested paths in both the driver and firmware.

Thanks.

-- 
tejun

  parent reply	other threads:[~2013-09-20 12:26 UTC|newest]

Thread overview: 73+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-05 12:51 [PATCH v2 0/6] AHCI: Conserve interrupts with pci_enable_msi_block_part() interface Alexander Gordeev
2013-09-05 12:52 ` [PATCH v2 1/6] PCI/MSI: Introduce " Alexander Gordeev
2013-09-05 12:52 ` [PATCH v2 2/6] PCI/MSI: Factor out pci_get_msi_cap() interface Alexander Gordeev
2013-09-05 13:09   ` Tejun Heo
2013-09-05 15:03     ` Alexander Gordeev
2013-09-05 15:04       ` Tejun Heo
2013-09-05 15:40         ` Alexander Gordeev
2013-09-05 15:44           ` Tejun Heo
2013-09-05 18:54             ` Alexander Gordeev
2013-09-05 20:06               ` Tejun Heo
2013-09-06 16:01                 ` Bjorn Helgaas
2013-09-06 16:06                   ` Tejun Heo
2013-09-06 23:32                     ` Bjorn Helgaas
2013-09-09 15:20                       ` Alexander Gordeev
2013-09-09 15:22                         ` [PATCH 1/9] PCI/MSI/PPC: Fix wrong RTAS error code reporting Alexander Gordeev
2013-09-09 15:22                         ` [PATCH 2/9] PCI/MSI/PPC: Make return values only 0/-errno when MSIs allocated Alexander Gordeev
2013-09-09 15:24                         ` [PATCH 3/9] PCI/MSI/x86: " Alexander Gordeev
2013-09-09 15:24                         ` [PATCH 4/9] PCI/MSI/MIPS: " Alexander Gordeev
2013-09-09 15:25                         ` [PATCH 2/9] PCI/MSI/PPC: Make return values only 0/-errno when MSIs allocated[PATCH 5/9] PCI/MSI/s390: " Alexander Gordeev
2013-09-09 15:38                           ` scrap this one Alexander Gordeev
2013-09-09 15:26                         ` [PATCH 5/9] PCI/MSI/s390: Make return values only 0/-errno when MSIs allocated Alexander Gordeev
2013-09-10 12:42                           ` Sergei Shtylyov
2013-09-10 13:09                             ` Alexander Gordeev
2013-09-09 15:27                         ` [PATCH 6/9] PCI/MSI/s390: Remove superfluous check of MSI type Alexander Gordeev
2013-09-09 15:28                         ` [PATCH 7/9] PCI/MSI/s390: Make return values only 0/-errno when MSIs allocated Alexander Gordeev
2013-09-09 15:29                         ` [PATCH 8/9] PCI/MSI: Fix return value when populate_msi_sysfs() failed Alexander Gordeev
2013-09-09 15:29                         ` [PATCH 9/9] PCI/MSI: Make return values only 0/-errno when MSIs allocated Alexander Gordeev
2013-09-09 15:37                         ` [PATCH v2 2/6] PCI/MSI: Factor out pci_get_msi_cap() interface Tejun Heo
2013-09-09 15:45                           ` Alexander Gordeev
2013-09-16 10:22                         ` Alexander Gordeev
2013-09-17 14:30                           ` Michael Ellerman
2013-09-18  9:48                             ` Alexander Gordeev
2013-09-18 14:22                               ` Tejun Heo
2013-09-18 16:50                                 ` Alexander Gordeev
2013-09-20  8:24                                   ` Alexander Gordeev
2013-09-20 12:27                                     ` Tejun Heo
2013-09-25 18:02                                       ` Bjorn Helgaas
2013-09-25 20:58                                         ` Alexander Gordeev
2013-09-25 21:00                                           ` Tejun Heo
2013-09-26  7:46                                             ` Alexander Gordeev
2013-09-26  8:58                                               ` David Laight
2013-09-26 10:45                                                 ` Alexander Gordeev
2013-09-26 11:34                                                   ` David Laight
2013-09-26 12:13                                                     ` Alexander Gordeev
2013-09-26 13:11                                               ` Tejun Heo
2013-09-26 14:39                                                 ` Alexander Gordeev
2013-09-26 14:42                                                   ` Tejun Heo
2013-10-01  7:19                                                   ` Michael Ellerman
2013-09-20 12:26                                   ` Tejun Heo [this message]
2013-10-01  7:26                                     ` Michael Ellerman
2013-10-01  7:35                                 ` Michael Ellerman
2013-10-01 11:55                                   ` Tejun Heo
2013-10-02  2:33                                     ` Michael Ellerman
2013-10-02  3:23                                       ` Tejun Heo
2013-09-26 12:32                               ` Mark Lord
2013-09-26 13:03                                 ` Alexander Gordeev
2013-10-02  2:46                                   ` Mark Lord
2013-10-02  7:26                                     ` Alexander Gordeev
2013-12-18 18:26                                 ` Bjorn Helgaas
2013-10-01  7:51                               ` Michael Ellerman
2013-10-01 10:35                                 ` Alexander Gordeev
2013-10-02  2:43                                   ` Michael Ellerman
2013-10-02  7:10                                     ` Alexander Gordeev
2013-09-06 13:17           ` Alexander Gordeev
2013-09-05 12:53 ` [PATCH v2 3/6] MSI/x86: Support pci_enable_msi_block_part() interface Alexander Gordeev
2013-09-05 12:53 ` [PATCH v2 4/6] AHCI: Conserve interrupts with " Alexander Gordeev
2013-09-05 13:10   ` Tejun Heo
2013-09-05 15:23     ` Alexander Gordeev
2013-09-05 12:54 ` [PATCH v2 5/6] AHCI: Check MRSM bit when multiple MSIs enabled Alexander Gordeev
2013-09-05 13:11   ` Tejun Heo
2013-09-05 15:25     ` Alexander Gordeev
2013-09-05 14:32   ` Sergei Shtylyov
2013-09-05 12:54 ` [PATCH v2 6/6] PCI/MSI: Get rid of pci_enable_msi_block_auto() interface Alexander Gordeev

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=20130920122603.GC7630@mtj.dyndns.org \
    --to=tj@kernel.org \
    --cc=JBeulich@suse.com \
    --cc=agordeev@redhat.com \
    --cc=benh@kernel.crashing.org \
    --cc=bhelgaas@google.com \
    --cc=joro@8bytes.org \
    --cc=linux-ide@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=michael@ellerman.id.au \
    --cc=mingo@kernel.org \
    --cc=x86@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).