Re: [PATCH 1/2] CPU, NUMA topology ABIs: clarify the overflow issue of sysfs pagebuf

From: Dave Hansen
Date: Thu Apr 29 2021 - 18:38:46 EST


On 4/29/21 3:32 PM, Song Bao Hua (Barry Song) wrote:
> $ strace numactl --hardware 2>&1 | grep cpu
> openat(AT_FDCWD, "/sys/devices/system/cpu",
> O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = 3
> openat(AT_FDCWD, "/sys/devices/system/node/node0/cpumap", O_RDONLY) = 3
> openat(AT_FDCWD, "/sys/devices/system/node/node1/cpumap", O_RDONLY) = 3
> openat(AT_FDCWD, "/sys/devices/system/node/node2/cpumap", O_RDONLY) = 3
> openat(AT_FDCWD, "/sys/devices/system/node/node3/cpumap", O_RDONLY) = 3
>
> If we move to binary, it means we have to change those applications.

I thought Greg was saying to using a sysfs binary attribute using
something like like sysfs_create_bin_file(). Those don't have the
PAGE_SIZE limitation. But, there's also nothing to keep us from spewing
nice human-readable text via the "binary" file.

We don't need to change the file format, just the internal kernel API
that we produce the files with.