From: Christian Goeschel Ndjomouo Date: Mon, 1 Jun 2026 20:29:20 +0000 (-0400) Subject: chcpu: re-enable warning message if last CPU is being disabled X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=39a01a4f507d25690222879db9cb3b04d4dfb515;p=thirdparty%2Futil-linux.git chcpu: re-enable warning message if last CPU is being disabled Signed-off-by: Christian Goeschel Ndjomouo --- diff --git a/sys-utils/chcpu.c b/sys-utils/chcpu.c index 60534451a..982224a3e 100644 --- a/sys-utils/chcpu.c +++ b/sys-utils/chcpu.c @@ -51,9 +51,9 @@ #define _PATH_SYS_CPU "/sys/devices/system/cpu" -#define is_cpu_online(cpu, count, onlinecpus) \ - (CPU_ISSET_S((cpu), CPU_ALLOC_SIZE(count), onlinecpus)) -#define num_online_cpus(count, onlinecpus) (CPU_COUNT_S(CPU_ALLOC_SIZE(count), onlinecpus)) +#define is_cpu_online(cpu, count, cpuset) \ + (CPU_ISSET_S((cpu), CPU_ALLOC_SIZE(count), cpuset)) +#define num_online_cpus(count, cpuset) (CPU_COUNT_S(CPU_ALLOC_SIZE(count), cpuset)) struct chcpu_context { struct path_cxt *sys; /* _PATH_SYS_CPU handler */ @@ -258,10 +258,12 @@ static void read_cpulist(struct chcpu_context *ctx) ctx->setsize = CPU_ALLOC_SIZE(ctx->maxcpus); - if (ul_path_access(ctx->sys, F_OK, "online") == 0) + if (ul_path_access(ctx->sys, F_OK, "online") == 0) { ul_path_readf_cpulist(ctx->sys, &ctx->cpu_set, ctx->maxcpus, "online"); - else + ul_path_readf_cpulist(ctx->sys, &ctx->online_cpus, ctx->maxcpus, "online"); + } else { ctx->cpu_set = CPU_ALLOC(ctx->maxcpus); + } if (!ctx->cpu_set) err(EXIT_FAILURE, _("cpuset_alloc failed")); @@ -416,6 +418,7 @@ int main(int argc, char *argv[]) } CPU_FREE(ctx->cpu_set); + CPU_FREE(ctx->online_cpus); ul_unref_path(ctx->sys); return rc == 0 ? EXIT_SUCCESS :