* 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

Reply via email to