All of lore.kernel.org
 help / color / mirror / Atom feed
From: Marc Zyngier <marc.zyngier@arm.com>
To: "Minghuan.Lian@freescale.com" <Minghuan.Lian@freescale.com>
Cc: "linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
	Arnd Bergmann <arnd@arndb.de>,
	"Mingkai.Hu@freescale.com" <Mingkai.Hu@freescale.com>,
	Roy Zang <tie-fei.zang@freescale.com>,
	Stuart Yoder <stuart.yoder@freescale.com>,
	Bjorn Helgaas <bhelgaas@google.com>,
	Scott Wood <scottwood@freescale.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	Jason Cooper <jason@lakedaemon.net>,
	Thomas Gleixner <tglx@linutronix.de>,
	Will Deacon <will.deacon@arm.com>
Subject: Re: [PATCH 1/2] irqchip/gicv3-its: Support share device ID
Date: Thu, 16 Apr 2015 12:50:38 +0100	[thread overview]
Message-ID: <552FA20E.3060202@arm.com> (raw)
In-Reply-To: <DM2PR0301MB0640C59C08CBEB4F2F392BAEE2E40@DM2PR0301MB0640.namprd03.prod.outlook.com>

Minghuan,

On 16/04/15 11:57, Minghuan.Lian@freescale.com wrote:

Please include the relevant people (Will Deacon for questions about the
SMMU), and avoid top posting, it makes it very hard to follow a discussion.

> I still have a couple of questions,
> 1. If I add a new flag and all PCI DEVID will be replaced with a
> fixed ID,  does SMMU can work correctly? For example, If we insert an
> Ethernet card with two ports, a port is assigned to kvm1, another
> port is assigned to kvm2. In this case, we should use one or two
> fixed ID?

That completely depends on what the SMMU sees. If it sees the same ID,
you won't be able to perform any form of isolation. But I have no idea
how your hardware works, so maybe explaining in details how this is
constructed will help.

> 2. If using PCIe device with SR-IOV, the driver will dynamically
> create some new PCIe devices. At this time, ITS device may has been
> created for PF.  So we must previously  create ITS device with a
> large enough nvesc. However its_get_pci_alias: dev_alias->count +=
> its_pci_msi_vec_count(dev_alias->pdev) only calculate with the
> exiting PCIe device, could not meet this requirement. How to change
> dev_alias->count?

You cannot change this dynamically. The ITT for this DeviceID will have
been allocated, and the ITS is getting live traffic. No way you're going
to resize it.

You will probable have to add some extra quirks to force the allocation
of a much larger ITT by lying about the nvec somehow. Or forget about
SRIOV and hotplug.

	M.
-- 
Jazz is not dead. It just smells funny...

WARNING: multiple messages have this Message-ID (diff)
From: marc.zyngier@arm.com (Marc Zyngier)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 1/2] irqchip/gicv3-its: Support share device ID
Date: Thu, 16 Apr 2015 12:50:38 +0100	[thread overview]
Message-ID: <552FA20E.3060202@arm.com> (raw)
In-Reply-To: <DM2PR0301MB0640C59C08CBEB4F2F392BAEE2E40@DM2PR0301MB0640.namprd03.prod.outlook.com>

Minghuan,

On 16/04/15 11:57, Minghuan.Lian at freescale.com wrote:

Please include the relevant people (Will Deacon for questions about the
SMMU), and avoid top posting, it makes it very hard to follow a discussion.

> I still have a couple of questions,
> 1. If I add a new flag and all PCI DEVID will be replaced with a
> fixed ID,  does SMMU can work correctly? For example, If we insert an
> Ethernet card with two ports, a port is assigned to kvm1, another
> port is assigned to kvm2. In this case, we should use one or two
> fixed ID?

That completely depends on what the SMMU sees. If it sees the same ID,
you won't be able to perform any form of isolation. But I have no idea
how your hardware works, so maybe explaining in details how this is
constructed will help.

> 2. If using PCIe device with SR-IOV, the driver will dynamically
> create some new PCIe devices. At this time, ITS device may has been
> created for PF.  So we must previously  create ITS device with a
> large enough nvesc. However its_get_pci_alias: dev_alias->count +=
> its_pci_msi_vec_count(dev_alias->pdev) only calculate with the
> exiting PCIe device, could not meet this requirement. How to change
> dev_alias->count?

You cannot change this dynamically. The ITT for this DeviceID will have
been allocated, and the ITS is getting live traffic. No way you're going
to resize it.

You will probable have to add some extra quirks to force the allocation
of a much larger ITT by lying about the nvec somehow. Or forget about
SRIOV and hotplug.

	M.
-- 
Jazz is not dead. It just smells funny...

  reply	other threads:[~2015-04-16 11:50 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-15  9:49 [PATCH] irqchip/gicv3-its: Decrease page size when needed Minghuan Lian
2015-04-15  9:49 ` Minghuan Lian
2015-04-15  9:49 ` [PATCH 1/2] irqchip/gicv3-its: Support share device ID Minghuan Lian
2015-04-15  9:49   ` Minghuan Lian
2015-04-15 11:08   ` Varun Sethi
2015-04-15 11:08     ` Varun Sethi
2015-04-15 11:38     ` Minghuan.Lian
2015-04-15 11:38       ` Minghuan.Lian at freescale.com
2015-04-15 13:18       ` Varun Sethi
2015-04-15 13:18         ` Varun Sethi
2015-04-16 10:40         ` Will Deacon
2015-04-16 10:40           ` Will Deacon
2015-04-17 14:19           ` Stuart Yoder
2015-04-17 14:19             ` Stuart Yoder
2015-04-17 17:57             ` Varun Sethi
2015-04-17 17:57               ` Varun Sethi
2015-04-22 17:07             ` Will Deacon
2015-04-22 17:07               ` Will Deacon
2015-04-22 18:40               ` Varun Sethi
2015-04-22 18:40                 ` Varun Sethi
2015-04-22 19:41               ` Stuart Yoder
2015-04-22 19:41                 ` Stuart Yoder
2015-04-24 16:18                 ` Will Deacon
2015-04-24 16:18                   ` Will Deacon
2015-04-24 16:44                   ` Marc Zyngier
2015-04-24 16:44                     ` Marc Zyngier
2015-04-24 18:18                     ` Stuart Yoder
2015-04-24 18:18                       ` Stuart Yoder
2015-04-25 10:39                       ` Marc Zyngier
2015-04-25 10:39                         ` Marc Zyngier
2015-04-26 18:20                         ` Varun Sethi
2015-04-26 18:20                           ` Varun Sethi
2015-04-27  7:58                           ` Marc Zyngier
2015-04-27  7:58                             ` Marc Zyngier
2015-04-27 13:08                             ` Varun Sethi
2015-04-27 13:08                               ` Varun Sethi
2015-04-27 17:04                               ` Will Deacon
2015-04-27 17:04                                 ` Will Deacon
2015-05-01 15:23                                 ` Stuart Yoder
2015-05-01 15:23                                   ` Stuart Yoder
2015-05-01 15:26                                   ` Will Deacon
2015-05-01 15:26                                     ` Will Deacon
2015-04-27 17:17                               ` Marc Zyngier
2015-04-27 17:17                                 ` Marc Zyngier
2015-04-24 19:24                     ` Stuart Yoder
2015-04-24 19:24                       ` Stuart Yoder
2015-04-24 18:09                   ` Stuart Yoder
2015-04-24 18:09                     ` Stuart Yoder
2015-04-26 18:26                 ` Varun Sethi
2015-04-26 18:26                   ` Varun Sethi
2015-04-15 16:36   ` Marc Zyngier
2015-04-15 16:36     ` Marc Zyngier
2015-04-16  2:57     ` Minghuan.Lian
2015-04-16  2:57       ` Minghuan.Lian at freescale.com
2015-04-16 10:04       ` Marc Zyngier
2015-04-16 10:04         ` Marc Zyngier
2015-04-16 10:57         ` Minghuan.Lian
2015-04-16 10:57           ` Minghuan.Lian at freescale.com
2015-04-16 11:50           ` Marc Zyngier [this message]
2015-04-16 11:50             ` Marc Zyngier
2015-04-16 18:38             ` Varun Sethi
2015-04-16 18:38               ` Varun Sethi
2015-04-17  2:34               ` Minghuan.Lian
2015-04-17  2:34                 ` Minghuan.Lian at freescale.com
2015-04-15  9:49 ` [PATCH 2/2] pci/layerscape: Add LS2085A MSI support Minghuan Lian
2015-04-15  9:49   ` Minghuan Lian
2015-04-15 11:51 ` [PATCH] irqchip/gicv3-its: Decrease page size when needed Jason Cooper
2015-04-15 11:51   ` Jason Cooper
2015-04-15 14:17   ` Marc Zyngier
2015-04-15 14:17     ` Marc Zyngier
2015-04-16  1:15     ` Minghuan.Lian
2015-04-16  1:15       ` Minghuan.Lian at freescale.com
2015-04-15 16:31 ` Marc Zyngier
2015-04-15 16:31   ` Marc Zyngier

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=552FA20E.3060202@arm.com \
    --to=marc.zyngier@arm.com \
    --cc=Minghuan.Lian@freescale.com \
    --cc=Mingkai.Hu@freescale.com \
    --cc=arnd@arndb.de \
    --cc=bhelgaas@google.com \
    --cc=jason@lakedaemon.net \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=scottwood@freescale.com \
    --cc=stuart.yoder@freescale.com \
    --cc=tglx@linutronix.de \
    --cc=tie-fei.zang@freescale.com \
    --cc=will.deacon@arm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.