Browse Source

[IA64-SGI] fix bte_copy() calling smp_processor_id() while preemptible

bte_copy() calls calls smp_processor_id(), which will get flagged if
preemption if enabled.  raw_smp_processor_id() is used instead 
because we are just using it to pick a BTE interface and are not 
tied to a specific cpu.

Signed-off-by: Russ Anderson (rja@sgi.com)
Signed-off-by: Tony Luck <tony.luck@intel.com>
Russ Anderson 20 years ago
parent
commit
d1e079b3fc
1 changed files with 1 additions and 1 deletions
  1. 1 1
      arch/ia64/sn/kernel/bte.c

+ 1 - 1
arch/ia64/sn/kernel/bte.c

@@ -105,7 +105,7 @@ bte_result_t bte_copy(u64 src, u64 dest, u64 len, u64 mode, void *notification)
 	/*
 	 * Start with interface corresponding to cpu number
 	 */
-	bte_first = get_cpu() % btes_per_node;
+	bte_first = raw_smp_processor_id() % btes_per_node;
 
 	if (mode & BTE_USE_DEST) {
 		/* try remote then local */