From: Jason Xing <kernelxing@xxxxxxxxxxx> Use for_each_possible_cpu to create per-cpu relayfs file to avoid later hotplug cpu which doesn't have its own file. Reviewed-by: Yushan Zhou <katrinzhou@xxxxxxxxxxx> Signed-off-by: Jason Xing <kernelxing@xxxxxxxxxxx> --- kernel/relay.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/relay.c b/kernel/relay.c index 27f7e701724f..dcb099859e83 100644 --- a/kernel/relay.c +++ b/kernel/relay.c @@ -519,7 +519,7 @@ struct rchan *relay_open(const char *base_filename, kref_init(&chan->kref); mutex_lock(&relay_channels_mutex); - for_each_online_cpu(i) { + for_each_possible_cpu(i) { buf = relay_open_buf(chan, i); if (!buf) goto free_bufs; @@ -615,7 +615,7 @@ int relay_late_setup_files(struct rchan *chan, * no files associated. So it's safe to call relay_setup_buf_file() * on all currently online CPUs. */ - for_each_online_cpu(i) { + for_each_possible_cpu(i) { buf = *per_cpu_ptr(chan->buf, i); if (unlikely(!buf)) { WARN_ONCE(1, KERN_ERR "CPU has no buffer!\n"); -- 2.43.5