On 31 December 2017 at 10:15, Greg Kroah-Hartman gregkh@linuxfoundation.org wrote:
I re-tested ldt_gdt_64 again locally and in testing LAB. The test failed again so I think this is a regression. I did the bisection which resulted in
2c8e9099aecec2baaac8d34c7b823493f2d0eeed is the first bad commit commit 2c8e9099aecec2baaac8d34c7b823493f2d0eeed Author: Thomas Gleixner tglx@linutronix.de Date: Thu Dec 14 12:27:31 2017 +0100
x86/ldt: Prevent LDT inheritance on exec commit a4828f81037f491b2cc986595e3a969a6eeb2fb5 upstream.
Reverting this commit makes he ldt_gdt_64 pass again. However it's worth to mention that the test uses a pre-build version of kselftest from 4.14 (sources here: https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.14.tar.xz). The offending commit also changed tools/testing/selftests/x86/ldt_gdt.c. I re-tested original build using this version of kselftests and the ldt_gdt_64 passes (as expected). This makes me thinking whether using the 'old' version of kselftests is a good idea.
You should use the version with the fix, for the obvious reason as documented in the selftest change :)
I'll move all our stable builds to use kselftests from 4.14.10.
milosz