All of lore.kernel.org
 help / color / mirror / Atom feed
From: "chenxiang (M)" <chenxiang66@hisilicon.com>
To: Ming Lei <ming.lei@redhat.com>, <lkml@sdf.org>, <tglx@linutronix.de>
Cc: <kbusch@kernel.org>, "axboe@kernel.dk" <axboe@kernel.dk>,
	"linux-block@vger.kernel.org" <linux-block@vger.kernel.org>,
	Linuxarm <linuxarm@huawei.com>,
	John Garry <john.garry@huawei.com>
Subject: The irq Affinity is changed after the patch(Fixes: b1a5a73e64e9 ("genirq/affinity: Spread vectors on node according to nr_cpu ratio"))
Date: Tue, 19 Nov 2019 09:25:30 +0800	[thread overview]
Message-ID: <d59f7f7a-975a-2032-aa61-7cbff7585d33@hisilicon.com> (raw)

Hi,

There are 128 cpus and 16 irqs for SAS controller in my system, and 
there are 4 Nodes, every 32 cpus are for one node (cpu0-31 for node0, 
cpu32-63 for node1, cpu64-95 for node2, cpu96-127 for node3).
We use function pci_alloc_irq_vectors_affinity() to set the affinity of 
irqs.

I find that  before the patch (Fixes: b1a5a73e64e9 ("genirq/affinity: 
Spread vectors on node according to nr_cpu ratio")), the relationship 
between irqs and cpus is: irq0 bind to cpu0-7, irq1 bind to cpu8-15,
irq2 bind to cpu16-23, irq3 bind to cpu24-31,irq4 bind to cpu32-39... 
irq15 bind to cpu120-127. But after the patch, the relationship is 
changed: irq0 bind to cpu32-39,
irq1 bind to cpu40-47, ..., irq11 bind to cpu120-127, irq12 bind to 
cpu0-7, irq13 bind to cpu8-15, irq14 bind to cpu16-23, irq15 bind to 
cpu24-31.

I notice that before calling the sort() in function 
alloc_nodes_vectors(), the id of array node_vectors[] is from 0,1,2,3. 
But after function sort(), the index of array node_vectors[] is 1,2,3,0.
But i think it sorts according to the numbers of cpus in those nodes, so 
it should be the same as before calling sort() as the numbers of cpus in 
every node are 32.

Is it a bug of sort() or the usage of sort()?

Thanks,
Shawn


             reply	other threads:[~2019-11-19  1:25 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-19  1:25 chenxiang (M) [this message]
2019-11-19  1:42 ` The irq Affinity is changed after the patch(Fixes: b1a5a73e64e9 ("genirq/affinity: Spread vectors on node according to nr_cpu ratio")) Ming Lei
     [not found]   ` <a8a89884-8323-ff70-f35e-0fcf5d7afefc@hisilicon.com>
2019-11-19  3:17     ` Ming Lei
2019-11-19  3:32       ` chenxiang (M)
2019-11-19  6:56         ` Ming Lei
2019-12-08  7:42     ` George Spelvin
2019-12-09  2:58       ` chenxiang (M)

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=d59f7f7a-975a-2032-aa61-7cbff7585d33@hisilicon.com \
    --to=chenxiang66@hisilicon.com \
    --cc=axboe@kernel.dk \
    --cc=john.garry@huawei.com \
    --cc=kbusch@kernel.org \
    --cc=linux-block@vger.kernel.org \
    --cc=linuxarm@huawei.com \
    --cc=lkml@sdf.org \
    --cc=ming.lei@redhat.com \
    --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 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.