Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b6ad92d4 authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge Committed by Ingo Molnar
Browse files

x86_64: vdso32 cleanup using feature flags



Use the X86_FEATURE_SYSENTER32 to remove hard-coded CPU vendor check.

Signed-off-by: default avatarJeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 8d28aab5
Loading
Loading
Loading
Loading
+1 −10
Original line number Diff line number Diff line
@@ -203,20 +203,11 @@ static struct page *vdso32_pages[1];

#ifdef CONFIG_X86_64

static int use_sysenter __read_mostly = -1;

#define	vdso32_sysenter()	(use_sysenter > 0)
#define	vdso32_sysenter()	(boot_cpu_has(X86_FEATURE_SYSENTER32))

/* May not be __init: called during resume */
void syscall32_cpu_init(void)
{
	if (use_sysenter < 0) {
		if (boot_cpu_data.x86_vendor == X86_VENDOR_INTEL)
			use_sysenter = 1;
		if (boot_cpu_data.x86_vendor == X86_VENDOR_CENTAUR)
			use_sysenter = 1;
	}

	/* Load these always in case some future AMD CPU supports
	   SYSENTER from compat mode too. */
	checking_wrmsrl(MSR_IA32_SYSENTER_CS, (u64)__KERNEL_CS);