lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <tip-adedf2893c192dd09b1cc2f2dcfdd7cad99ec49d@git.kernel.org>
Date:   Tue, 7 Nov 2017 02:17:52 -0800
From:   tip-bot for Andy Lutomirski <tipbot@...or.com>
To:     linux-tip-commits@...r.kernel.org
Cc:     mingo@...nel.org, luto@...nel.org, tglx@...utronix.de,
        hpa@...or.com, linux-kernel@...r.kernel.org,
        torvalds@...ux-foundation.org, bpetkov@...e.de,
        peterz@...radead.org
Subject: [tip:x86/asm] selftests/x86/ldt_gdt: Run most existing LDT test
 cases against the GDT as well

Commit-ID:  adedf2893c192dd09b1cc2f2dcfdd7cad99ec49d
Gitweb:     https://git.kernel.org/tip/adedf2893c192dd09b1cc2f2dcfdd7cad99ec49d
Author:     Andy Lutomirski <luto@...nel.org>
AuthorDate: Sat, 4 Nov 2017 04:19:51 -0700
Committer:  Ingo Molnar <mingo@...nel.org>
CommitDate: Tue, 7 Nov 2017 11:13:43 +0100

selftests/x86/ldt_gdt: Run most existing LDT test cases against the GDT as well

Now that the main test infrastructure supports the GDT, run tests
that will pass the kernel's GDT permission tests against the GDT.

Signed-off-by: Andy Lutomirski <luto@...nel.org>
Cc: Borislav Petkov <bpetkov@...e.de>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Peter Zijlstra <peterz@...radead.org>
Cc: Thomas Gleixner <tglx@...utronix.de>
Link: http://lkml.kernel.org/r/686a1eda63414da38fcecc2412db8dba1ae40581.1509794321.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@...nel.org>
---
 tools/testing/selftests/x86/ldt_gdt.c | 10 +++++++++-
 1 file changed, 9 insertions(+), 1 deletion(-)

diff --git a/tools/testing/selftests/x86/ldt_gdt.c b/tools/testing/selftests/x86/ldt_gdt.c
index 45f3024..3bb42ff 100644
--- a/tools/testing/selftests/x86/ldt_gdt.c
+++ b/tools/testing/selftests/x86/ldt_gdt.c
@@ -189,7 +189,15 @@ static bool install_valid_mode(const struct user_desc *d, uint32_t ar,
 
 static bool install_valid(const struct user_desc *desc, uint32_t ar)
 {
-	return install_valid_mode(desc, ar, false, true);
+	bool ret = install_valid_mode(desc, ar, false, true);
+
+	if (desc->contents <= 1 && desc->seg_32bit &&
+	    !desc->seg_not_present) {
+		/* Should work in the GDT, too. */
+		install_valid_mode(desc, ar, false, false);
+	}
+
+	return ret;
 }
 
 static void install_invalid(const struct user_desc *desc, bool oldmode)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ