> -----Original Message----- > From: Dave Hansen [mailto:dave.hansen@xxxxxxxxx] > Sent: Friday, April 30, 2021 2:21 AM > To: tiantao (H) <tiantao6@xxxxxxxxxxxxx>; corbet@xxxxxxx; > gregkh@xxxxxxxxxxxxxxxxxxx; Song Bao Hua (Barry Song) > <song.bao.hua@xxxxxxxxxxxxx> > Cc: linux-doc@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; Rafael J. > Wysocki <rafael@xxxxxxxxxx>; Peter Zijlstra <peterz@xxxxxxxxxxxxx>; Valentin > Schneider <valentin.schneider@xxxxxxx>; Dave Hansen > <dave.hansen@xxxxxxxxxxxxxxx>; Daniel Bristot de Oliveira <bristot@xxxxxxxxxx> > Subject: Re: [PATCH 1/2] CPU, NUMA topology ABIs: clarify the overflow issue > of sysfs pagebuf > > On 4/29/21 12:03 AM, Tian Tao wrote: > > diff --git a/Documentation/ABI/stable/sysfs-devices-node > b/Documentation/ABI/stable/sysfs-devices-node > > index 484fc04..82dfe64 100644 > > --- a/Documentation/ABI/stable/sysfs-devices-node > > +++ b/Documentation/ABI/stable/sysfs-devices-node > > @@ -47,7 +47,10 @@ What: /sys/devices/system/node/nodeX/cpulist > > Date: October 2002 > > Contact: Linux Memory Management list <linux-mm@xxxxxxxxx> > > Description: > > - The CPUs associated to the node. > > + The CPUs associated to the node. The format is like 0-3, > > + 8-11, 14,17. maximum size is PAGE_SIZE, so the tail > > + of the string will be trimmed while its size is larger > > + than PAGE_SIZE. > > I think it's pretty arguable that truncating output on a real system is > an ABI break. Doing this would make the interface rather useless. > > Don't we need a real solution rather than throwing up our hands? > > Do we think >PAGE_SIZE data out of a sysfs file is a worse ABI break or > something? This kind of cpu list ABIs have been there for many years but have never been documented well. We have two ABIs: xxx_cpus - in format like 3333333333 xxx_cpus_list - in format like 0,3,5,7,9,11,13.... xxx_cpus_list is another human-readable version of xxx_cpus. It doesn't include any more useful information than xxx_cpus. xxx_cpus won't overflow based on BUILD_BUG_ON and maximum NR_CPUS in kconfig nowadays. if people all agree the trimmed list is a break of ABI, I think we may totally remove this list. For these days, this list probably has never overflowed but literally this could happen. thoughts? Thanks Barry