[COMMIT osv master] sysfs: add /sys/devices/system/cpu/online

4 views
Skip to first unread message

Commit Bot

unread,
Aug 14, 2023, 4:41:38 AM8/14/23
to osv...@googlegroups.com, Waldemar Kozaczuk
From: Waldemar Kozaczuk <jwkoz...@gmail.com>
Committer: Nadav Har'El <n...@scylladb.com>
Branch: master

sysfs: add /sys/devices/system/cpu/online

This patch adds new pseudo file to the sysfs filesystem
to list number of online cpus. This file lists number of cpus
in the following format:

0-<# of cpus - 1>

Signed-off-by: Waldemar Kozaczuk <jwkoz...@gmail.com>

Closes #1241

---
diff --git a/fs/sysfs/sysfs_vnops.cc b/fs/sysfs/sysfs_vnops.cc
--- a/fs/sysfs/sysfs_vnops.cc
+++ b/fs/sysfs/sysfs_vnops.cc
@@ -89,6 +89,14 @@ sysfs_mount(mount* mp, const char *dev, int flags, const void* data)
auto system = make_shared<pseudo_dir_node>(inode_count++);
system->add("node", node);

+ auto cpu = make_shared<pseudo_dir_node>(inode_count++);
+ cpu->add("online", inode_count++, [] {
+ std::ostringstream os;
+ osv::fprintf(os, "0-%d", sched::cpus.size() - 1);
+ return os.str();
+ });
+ system->add("cpu", cpu);
+
auto devices = make_shared<pseudo_dir_node>(inode_count++);
devices->add("system", system);

Reply all
Reply to author
Forward
0 new messages