Ok, so I searched for the patch to Xen mentioned in the upstream discussion which was:
x86: Mask X86_FEATURE_XSAVE in cpuid leaf 1, ecx, as we don't
allow guests to use it (by setting cr4.OSXSAVE).
Together with the other comments I think I understand now that Xen always has masked off OSXSAVE in the cpuid bits but not XSAVE. And the newer kernel patch checks for OSXSAVE which is safe. Xen will set OSXSAVE (together with XSAVE) in cpuid bits if it supports it and allows the guest to use it, too.
Ok, so I searched for the patch to Xen mentioned in the upstream discussion which was:
x86: Mask X86_FEATURE_XSAVE in cpuid leaf 1, ecx, as we don't
allow guests to use it (by setting cr4.OSXSAVE).
Together with the other comments I think I understand now that Xen always has masked off OSXSAVE in the cpuid bits but not XSAVE. And the newer kernel patch checks for OSXSAVE which is safe. Xen will set OSXSAVE (together with XSAVE) in cpuid bits if it supports it and allows the guest to use it, too.