From: Alexander Gordeev <agordeev@redhat.com>
To: Christoph Hellwig <hch@lst.de>
Cc: axboe@fb.com, tglx@linutronix.de, keith.busch@intel.com,
linux-block@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH 01/13] genirq/msi: Add cpumask allocation to alloc_msi_entry
Date: Mon, 19 Sep 2016 09:30:58 +0200 [thread overview]
Message-ID: <20160919073057.GA31001@agordeev.lab.eng.brq.redhat.com> (raw)
In-Reply-To: <1473862739-15032-2-git-send-email-hch@lst.de>
On Wed, Sep 14, 2016 at 04:18:47PM +0200, Christoph Hellwig wrote:
> diff --git a/kernel/irq/msi.c b/kernel/irq/msi.c
> index 19e9dfb..8a3e8727 100644
> --- a/kernel/irq/msi.c
> +++ b/kernel/irq/msi.c
> @@ -18,20 +18,42 @@
> /* Temparory solution for building, will be removed later */
> #include <linux/pci.h>
>
> -struct msi_desc *alloc_msi_entry(struct device *dev)
> +/**
> + * alloc_msi_entry - Allocate an initialize msi_entry
> + * @dev: Pointer to the device for which this is allocated
> + * @nvec: The number of vectors used in this entry
> + * @affinity: Optional pointer to an affinity mask array size of @nvec
> + *
> + * If @affinity is not NULL then a an affinity array[@nvec] is allocated
> + * and the affinity masks from @affinity are copied.
> + */
> +struct msi_desc *
> +alloc_msi_entry(struct device *dev, int nvec, const struct cpumask *affinity)
> {
> - struct msi_desc *desc = kzalloc(sizeof(*desc), GFP_KERNEL);
> + struct msi_desc *desc;
> +
> + desc = kzalloc(sizeof(*desc), GFP_KERNEL);
> if (!desc)
> return NULL;
>
> INIT_LIST_HEAD(&desc->list);
> desc->dev = dev;
> + desc->nvec_used = nvec;
> + if (affinity) {
> + desc->affinity = kmemdup(affinity,
> + nvec * sizeof(*desc->affinity), GFP_KERNEL);
> + if (!desc->affinity) {
> + kfree(desc);
> + return NULL;
> + }
> + }
nit - should not "desc" initialization follow "desc->affinity" allocation?
> return desc;
> }
>
> void free_msi_entry(struct msi_desc *entry)
> {
> + kfree(entry->affinity);
> kfree(entry);
> }
>
> --
> 2.1.4
>
next prev parent reply other threads:[~2016-09-19 7:25 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-09-14 14:18 blk-mq: allow passing in an external queue mapping V3 Christoph Hellwig
2016-09-14 14:18 ` [PATCH 01/13] genirq/msi: Add cpumask allocation to alloc_msi_entry Christoph Hellwig
2016-09-15 19:00 ` [tip:irq/core] " tip-bot for Thomas Gleixner
2016-09-19 7:30 ` Alexander Gordeev [this message]
2016-09-19 13:50 ` [PATCH 01/13] " Christoph Hellwig
2016-09-20 7:06 ` Alexander Gordeev
2016-09-20 8:58 ` Thomas Gleixner
2016-09-14 14:18 ` [PATCH 02/13] genirq/affinity: Provide smarter irq spreading infrastructure Christoph Hellwig
2016-09-15 19:01 ` [tip:irq/core] " tip-bot for Thomas Gleixner
2016-09-21 12:29 ` [PATCH 02/13] " Alexander Gordeev
2016-09-22 21:14 ` Thomas Gleixner
2016-09-14 14:18 ` [PATCH 03/13] genirq/msi: Switch to new " Christoph Hellwig
2016-09-15 19:01 ` [tip:irq/core] " tip-bot for Thomas Gleixner
2016-09-21 12:23 ` [PATCH 03/13] " Alexander Gordeev
2016-09-22 8:51 ` Alexander Gordeev
2016-09-14 14:18 ` [PATCH 04/13] genirq/affinity: Remove old irq spread infrastructure Christoph Hellwig
2016-09-15 19:02 ` [tip:irq/core] " tip-bot for Thomas Gleixner
2016-09-14 14:18 ` [PATCH 05/13] pci/msi: Retrieve affinity for a vector Christoph Hellwig
2016-09-15 19:02 ` [tip:irq/core] " tip-bot for Thomas Gleixner
2016-09-14 14:18 ` [PATCH 06/13] blk-mq: don't redistribute hardware queues on a CPU hotplug event Christoph Hellwig
2016-09-14 14:18 ` [PATCH 07/13] blk-mq: only allocate a single mq_map per tag_set Christoph Hellwig
2016-09-14 14:18 ` [PATCH 08/13] blk-mq: remove ->map_queue Christoph Hellwig
2016-09-14 14:18 ` [PATCH 09/13] blk-mq: allow the driver to pass in a queue mapping Christoph Hellwig
2016-09-14 14:18 ` [PATCH 10/13] blk-mq: provide a default queue mapping for PCI device Christoph Hellwig
2016-09-19 7:33 ` Alexander Gordeev
2016-09-19 13:49 ` Christoph Hellwig
2016-09-14 14:18 ` [PATCH 11/13] nvme: switch to use pci_alloc_irq_vectors Christoph Hellwig
2016-09-23 22:21 ` Sagi Grimberg
2016-09-26 15:09 ` Christoph Hellwig
2016-09-14 14:18 ` [PATCH 12/13] nvme: remove the post_scan callout Christoph Hellwig
2016-09-14 14:18 ` [PATCH 13/13] blk-mq: get rid of the cpumask in struct blk_mq_tags Christoph Hellwig
2016-09-15 14:44 ` Christoph Hellwig
2016-09-15 14:46 ` Jens Axboe
2016-09-15 14:40 ` blk-mq: allow passing in an external queue mapping V3 Keith Busch
2016-09-15 14:32 ` Christoph Hellwig
2016-09-15 14:34 ` Jens Axboe
2016-09-15 14:42 ` Christoph Hellwig
2016-09-15 14:44 ` Jens Axboe
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=20160919073057.GA31001@agordeev.lab.eng.brq.redhat.com \
--to=agordeev@redhat.com \
--cc=axboe@fb.com \
--cc=hch@lst.de \
--cc=keith.busch@intel.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tglx@linutronix.de \
/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
all inboxes | Powered by JetHome®