public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
From: Ashok Raj <ashok.raj@intel.com>
To: linux-ia64@vger.kernel.org
Subject: ia64: Add cpu cache flush to offlining cpu
Date: Mon, 13 Jun 2005 21:23:55 +0000	[thread overview]
Message-ID: <20050613142355.A4152@unix-os.sc.intel.com> (raw)

Hi Tony

This patch adds a cache flush to the offlining CPU. Also added the same
to ACPI counterpart that requires this as well.

Please consider this patch along with BSP removal patch posted earlier
for next ia64 test tree.

-- 
Cheers,
Ashok Raj
- Open Source Technology Center


Flush caches on cpu thats going to go away. Also added to
ACPI_FLUSH_CPU_CACHE which was null macro earlier.

Had to remove linux/include/proc_fs.h from efi.h to
have sal.h included. Triggers many compile errors
without removal.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
---------------------------------------------
 arch/ia64/kernel/process.c |    1 +
 include/asm-ia64/acpi.h    |    3 ++-
 include/asm-ia64/sal.h     |    5 +++++
 include/linux/efi.h        |    1 -
 4 files changed, 8 insertions(+), 2 deletions(-)

Index: linux-2.6.12-rc6-mm1/arch/ia64/kernel/process.c
=================================--- linux-2.6.12-rc6-mm1.orig/arch/ia64/kernel/process.c
+++ linux-2.6.12-rc6-mm1/arch/ia64/kernel/process.c
@@ -215,6 +215,7 @@ static inline void play_dead(void)
 	max_xtp();
 	local_irq_disable();
 	idle_task_exit();
+	ia64_sal_cache_flush(FLUSH_INST_DATA_CACHE);
 	ia64_jump_to_sal(&sal_boot_rendez_state[this_cpu]);
 	/*
 	 * The above is a point of no-return, the processor is
Index: linux-2.6.12-rc6-mm1/include/asm-ia64/acpi.h
=================================--- linux-2.6.12-rc6-mm1.orig/include/asm-ia64/acpi.h
+++ linux-2.6.12-rc6-mm1/include/asm-ia64/acpi.h
@@ -33,6 +33,7 @@
 #include <linux/init.h>
 #include <linux/numa.h>
 #include <asm/system.h>
+#include <asm/sal.h>
 
 #define COMPILER_DEPENDENT_INT64	long
 #define COMPILER_DEPENDENT_UINT64	unsigned long
@@ -56,7 +57,7 @@
 #define BREAKPOINT3
 #define ACPI_DISABLE_IRQS() local_irq_disable()
 #define ACPI_ENABLE_IRQS()  local_irq_enable()
-#define ACPI_FLUSH_CPU_CACHE()
+#define ACPI_FLUSH_CPU_CACHE() ia64_sal_cache_flush(FLUSH_INST_DATA_CACHE)
 
 static inline int
 ia64_acpi_acquire_global_lock (unsigned int *lock)
Index: linux-2.6.12-rc6-mm1/include/asm-ia64/sal.h
=================================--- linux-2.6.12-rc6-mm1.orig/include/asm-ia64/sal.h
+++ linux-2.6.12-rc6-mm1/include/asm-ia64/sal.h
@@ -657,6 +657,11 @@ ia64_sal_freq_base (unsigned long which,
 	return isrv.status;
 }
 
+#define FLUSH_INSTR_CACHE		(1UL)
+#define FLUSH_DATA_CACHE		(2UL)
+#define FLUSH_INST_DATA_CACHE	(3UL)
+#define MAKE_INST_DATA_COHERENT	(4UL)
+
 /* Flush all the processor and platform level instruction and/or data caches */
 static inline s64
 ia64_sal_cache_flush (u64 cache_type)
Index: linux-2.6.12-rc6-mm1/include/linux/efi.h
=================================--- linux-2.6.12-rc6-mm1.orig/include/linux/efi.h
+++ linux-2.6.12-rc6-mm1/include/linux/efi.h
@@ -15,7 +15,6 @@
 #include <linux/string.h>
 #include <linux/time.h>
 #include <linux/types.h>
-#include <linux/proc_fs.h>
 #include <linux/rtc.h>
 #include <linux/ioport.h>
 

             reply	other threads:[~2005-06-13 21:23 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-13 21:23 Ashok Raj [this message]
2005-06-13 21:44 ` ia64: Add cpu cache flush to offlining cpu David Mosberger
2005-06-14  2:16 ` Ashok Raj

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050613142355.A4152@unix-os.sc.intel.com \
    --to=ashok.raj@intel.com \
    --cc=linux-ia64@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox