On 08/05/2023 04:12, Brian Inglis wrote:
cpuid 0x00000007:0 ecx:7 shstk Shadow Stack support & Windows
[20]20H1/[20]2004+
=> user_shstk User mode program Shadow Stack support
AMD SVM 0x8000000a:0 edx:25 vnmi virtual Non-Maskable Interrrupts
Sync AMD 0x80000008:0 ebx flags across two output locations
Thanks. I applied this.
Does this need applying to the 3.4 branch as well?
---
winsup/cygwin/fhandler/proc.cc | 29 ++++++++++++++++++++++-------
+ /* cpuid 0x00000007 ecx & Windows [20]20H1/[20]2004+ */
+ if (maxf >= 0x00000007 && wincap.osname () >= "10.0"
+ && wincap.build_number () >= 19041)
+ {
+ cpuid (&unused, &unused, &features1, &unused, 0x00000007, 0);
+ ftcprint (features1, 7, "user_shstk"); /* "user shadow stack" */
+ }
+
This seems a little odd and maybe worthy of a comment, as surely the CPU
has the capability irrespective of the OS?