* Yu, Fenghua <[email protected]> wrote:
> > From: Ingo Molnar [mailto:[email protected]] On Behalf Of Ingo
> > Molnar
> > Sent: Friday, July 08, 2016 1:42 AM
> > * Fenghua Yu <[email protected]> wrote:
> >
> > > From: Fenghua Yu <[email protected]>
> > >
> > > Add an ABI document entry for
> > /sys/devices/system/cpu/cpu*/cache/index*/id.
> > >
> > > Signed-off-by: Fenghua Yu <[email protected]>
> > > ---
> > > Documentation/ABI/testing/sysfs-devices-system-cpu | 13
> > +++++++++++++
> > > 1 file changed, 13 insertions(+)
> > >
> > > diff --git a/Documentation/ABI/testing/sysfs-devices-system-cpu
> > b/Documentation/ABI/testing/sysfs-devices-system-cpu
> > > index 1650133..cc62034 100644
> > > --- a/Documentation/ABI/testing/sysfs-devices-system-cpu
> > > +++ b/Documentation/ABI/testing/sysfs-devices-system-cpu
> > > @@ -272,6 +272,19 @@ Description: Parameters for the CPU cache
> > attributes
> > > the modified cache line is written to main
> > > memory only when it is replaced
> > >
> > > +
> > > +What: /sys/devices/system/cpu/cpu*/cache/index*/id
> > > +Date: July 2016
> > > +Contact: Linux kernel mailing list <[email protected]>
> > > +Description: Cache id
> > > +
> > > + The id identifies a cache in the platform. In same index, the id
> > > + is unique across the platform.
> >
> > What does 'In same index' mean?
>
> It means one cache's id is unique in all caches with same cache index number.
> For example, in all caches with index3 (i.e. level3), cache id 0 is unique to
> identify a L3 cache. But in caches with index 0 (i.e. Level0), there is also
> a
> cache id 0. So cache id is unique in one index. But not unique in two
> different
> index.
>
> Does that make sense? I hope I express that correctly.
Yeah, makes sense!
I'd express it like that:
The ID identifies a specific hardware cache of the machine
the kernel is running on. The (depth_index, ID) pair uniquely
identifies a cache.
And wherever you mention 'index' I'd change it over to 'depth index' - because
'index' alone is way too opaque - the 'id' is an index too.
Also note how I avoided the 'platform' word - that is really ambigious as well:
it
might mean something generic like 'x86', not just the actual system we are on.
BTW., are there any ID enumeration continuity guarantees, or can there be holes
in
the depth index or the ID? (In the normal case, not considering CPU hotplug
creating holes.) Is it the kernel that does the enumeration or do we trust what
the hardware (CPUID) is telling us?
Thanks,
Ingo