From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753471AbdJaJzd (ORCPT ); Tue, 31 Oct 2017 05:55:33 -0400 Received: from mga04.intel.com ([192.55.52.120]:33474 "EHLO mga04.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751691AbdJaJza (ORCPT ); Tue, 31 Oct 2017 05:55:30 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.44,323,1505804400"; d="scan'208";a="1237643609" From: Yu Chen To: x86@kernel.org Cc: Thomas Gleixner , Ingo Molnar , Lukas Wunner , "Rafael J . Wysocki" , Len Brown , linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Chen Yu Subject: [PATCH 0/3][RFC/RFT] Do not delay the MTRR synchronization for Date: Tue, 31 Oct 2017 17:58:03 +0800 Message-Id: X-Mailer: git-send-email 2.13.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Chen Yu The original problem comes from a bug found on MacBookPro that, the instructions run on each APs after resume are very slow, due to the MTRR been scribbled by the BIOS thus it behaves like running in 'uncached' mode. Thus this patch tries to synchronize the MTRR as early as possible by performing this action once the APs have been brought. Test result shows a 6 seconds improvement on the bogus MacBookPro, and 600 ms improvement on a Xeon Broadwell platform which has 88 cpus. Chen Yu (3): PM / sleep: Introduce a flag to identify the enable_nonboot_cpus stage x86/mtrr: Add cpu id into the MTRR setting data structure PM / sleep: Do not delay the synchronization of MTRR during resume arch/x86/kernel/cpu/mtrr/main.c | 13 ++++++++++--- arch/x86/kernel/smpboot.c | 2 -- include/linux/cpu.h | 2 ++ kernel/cpu.c | 8 ++++++++ 4 files changed, 20 insertions(+), 5 deletions(-) -- 2.13.5