Re: [PATCH] blk-mq: check if all HW queues are mapped to cpu

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Suppose that a system has 8 logical CPUs(4 cores with hyperthread)
and that 5 hardware queues are provided by a block driver.
With the current algorithm this will lead to the following assignment
of logical CPU to hardware queue:

HWQ 0: 0 1
HWQ 1: 2 3
HWQ 2: 4 5
HWQ 3: 6 7
HWQ 4: (none)

One way to fix it is to change the algorithm so the assignment may be:

HWQ 0: 0 1
HWQ 1: 2 3
HWQ 2: 4 5
HWQ 3: 6
HWQ 4: 7

This has been suggested before, but the previous mapping is actually
what I originally intended, so that it's symmetric. So by design, not a
bug. It's not that I'm completely adverse to changing it, but I've yet
to see a compelling reason to do so (and your patch doesn't have that
either, it just states that it changes the mapping from X to Y).

I tend to agree that there is no good reason for this sort of artificial
mapping. I'd be happy if blk_mq_alloc_tag_set will fail (with an
explanatory log message) when given a weird mapping such as more
HW queues than cpus or non-symmetric number of HW queues...

Thoughts?
--
To unsubscribe from this list: send the line "unsubscribe linux-block" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID]     [Linux SCSI]     [Linux ATA RAID]     [IDE]     [Linux Wireless]     [Linux Kernel]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Device Mapper]

  Powered by Linux