[PATCH] winsup/cygwin/fhandler/proc.cc: format_proc_cpuinfo() Linux 6.8 cpuinfo flags
Corinna Vinschen
corinna-cygwin@cygwin.com
Mon Mar 18 15:45:45 GMT 2024
On Mar 18 08:10, Brian Inglis wrote:
> On 2024-03-18 03:33, Corinna Vinschen wrote:
> > Hi Brian,
> >
> > On Mar 16 10:44, Brian Inglis wrote:
> > > add Linux 6.8 cpuinfo flags:
> > > Intel 0x00000007:1 eax:17 fred Flexible Return and Event Delivery;
> > > AMD 0x8000001f eax:4 sev_snp SEV secure nested paging;
> > > document unused and some unprinted bits that could look like omissions;
> > > fix typos and misalignments;
> >
> > I'm a bit puzzled about the "unused" slots. You're adding them
> > only in some places. What makes them "look like omissions"?
>
> Mainly because single bits are omitted, presumably because they do not want
> to pollute the symbol space with as yet unused features, just as they do not
> output all features as cpuinfo flags, until it indicates something about the
> build and/or system.
>
> Compare the minimal common standard feature bits defined in the gcc lib
> cpuid.h and gcc cpuinfo.h headers, with Linux cpuinfo cpufeatures.h, and the
> output of the cpuid utility, where almost all bits in older cpuid entries
> are defined.
I see. I just don't understands the difference between, say,
ftcprint (features1, 21, "avx512ifma"); /* vec int FMA */
+ /* ftcprint (features1, 22, ""); */ /* unused */
ftcprint (features1, 23, "clflushopt"); /* cache line flush opt */
and
ftcprint (features1, 3, "xsaves"); /* xsaves/xrstors */
+ /* ftcprint (features1, 4, "xfd"); */ /* eXtended Feature Disabling */
The latter makes sense, of course, but why is the first comment "unused",
rather than something like "PCOMMIT instruction" as in the cpuid output?
Note that I'm not saying that you have to change that, but I would like
to understand it.
Thanks,
Corinna
More information about the Cygwin-patches
mailing list