Skip to contentSkip to conversation

logical cpu number is discontinuity

DISCUSSION Masayoshi Mizuma 1 participant 1 message Jan 18, 2017 ACPI

lore
Share & tools
lore
#0 lore raw

Hi,

On v4.9 and v4.10 kernel, when I booted my box which has two nodes and each nodes have 48 logical cpus (Hyper Threading is enabled), the logical cpu number is discontinuity as follows.

node 0: 0-23, 256-279
node 1: 24-47, 280-303

So the following shell script fail to run.
---
#!/bin/bash

for ((cpu = 0; cpu < nproc; cpu++))
do
taskset -c $cpu ./do_work
done
---

I think the logical cpu number should be continuity like as v4.8 and earlier because user applications may expect the number is continuity.

I believe this behavior was introduced by the patch series beginning with the following commit.

f7c2883 x86/acpi: Enable acpi to register all possible cpus at boot time

Do anyone have ideas for fix this behavior...?

FYI.
v4.8 kernel, the logical cpu number is continuity as follows.

node 0: 0-23, 48-71
node 1: 24-47, 72-95

- Masayoshi Mizuma