File itrace-on_each_cpu-fix.patch of Package itrace

---
 src/driver/i386/pi_cpuinit.c  |    2 +-
 src/driver/i386/pi_itrace.c   |   12 ++++++------
 src/driver/i386/pi_tprof.c    |    4 ++--
 src/driver/pi_btrace.c        |    4 ++--
 src/driver/pi_counters.c      |   16 ++++++++--------
 src/driver/pi_ctrevent.c      |    6 +++---
 src/driver/pi_ioctl.c         |    3 +--
 src/driver/pi_ki.c            |    2 +-
 src/driver/pi_ptt.c           |    4 ++--
 src/driver/x86_64/pi_itrace.c |   12 ++++++------
 src/stap/pi_itrace.template   |    2 +-
 11 files changed, 33 insertions(+), 34 deletions(-)

--- a/src/driver/i386/pi_cpuinit.c
+++ b/src/driver/i386/pi_cpuinit.c
@@ -577,7 +577,7 @@ int pitrace_cpu_init(void)
 #endif
 
 	// read apic id and set logical numbers
- 	on_each_cpu(set_log_number, 0, 1, 1);		 	
+ 	on_each_cpu(set_log_number, 0, 1);
 	
         // Check whether max apic id OK
         for (i = 0; i < driver_info.num_cpus; ++i) {
--- a/src/driver/i386/pi_itrace.c
+++ b/src/driver/i386/pi_itrace.c
@@ -267,7 +267,7 @@ int ITrace_install(uint32_t instflag)
 		if (PU_FAILURE == pi_install_restore_patch())
 			return(PU_FAILURE); 
 #endif
-		on_each_cpu(pi_install_syscall_patch, 0, 0, 0);
+		on_each_cpu(pi_install_syscall_patch, 0, 0);
 		
 #endif
 
@@ -299,7 +299,7 @@ int ITrace_remove(void)
 	if ( driver_info.itrace_installed ) {
 		// Handlers are installed - remove them
 
-		on_each_cpu(pi_remove_syscall_patch, 0, 0, 0);
+		on_each_cpu(pi_remove_syscall_patch, 0, 0);
 		
 	}
 #endif
@@ -359,8 +359,8 @@ int ITrace_on(void)
 	
 	// set single step
 	
-	on_each_cpu(SetBTFInDebugCtlMsr, 0, 1, 1);
-	on_each_cpu(SetTFInEflags, 0, 1, 1);
+	on_each_cpu(SetBTFInDebugCtlMsr, 0, 1);
+	on_each_cpu(SetTFInEflags, 0, 1);
 
 	// start tracing
 	driver_info.itrace_active = 1;
@@ -1315,7 +1315,7 @@ int PI_install_irq_detect(void)
 
 	perf_need_no_exceptions = 1;
 
-	on_each_cpu(PITRACE_InstallHandlers, 0, 0, 0);
+	on_each_cpu(PITRACE_InstallHandlers, 0, 0);
 
 	PDEBUG("PI_install_irq_detect: end\n");
 	return (0);
@@ -1339,7 +1339,7 @@ int PI_remove_irq_detect(void)
 		// !!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!
 		// Watch for per cpu IDT in Linux; a common IDT is used now
 
-		on_each_cpu(PITRACE_RemoveHandlers, 0, 0, 0);
+		on_each_cpu(PITRACE_RemoveHandlers, 0, 0);
 	}
 
 	PDEBUG("PI_remove_irq_detect: end\n");
--- a/src/driver/i386/pi_tprof.c
+++ b/src/driver/i386/pi_tprof.c
@@ -118,7 +118,7 @@ int ArmTprofInterrupt(void)
     
     if (driver_info.apic_system && !driver_info.tprof_interrupt_armed) {
 
-	on_each_cpu(IpiProgramLocalApic, 0, 1, 1);
+	on_each_cpu(IpiProgramLocalApic, 0, 1);
 
         driver_info.tprof_interrupt_armed = 1;
         MappedData->TprofInterruptArmed   = 1;
@@ -156,7 +156,7 @@ int DisarmTprofInterrupt(void)
     MappedData->TprofInterruptArmed   = 0;
 
     if (driver_info.apic_system) {    
-    	on_each_cpu(IpiRestoreLocalApic, 0, 1, 1);
+    	on_each_cpu(IpiRestoreLocalApic, 0, 1);
     }                                                                     
     spin_unlock(&TprofArmDisarmLock);
     return (0);
--- a/src/driver/pi_btrace.c
+++ b/src/driver/pi_btrace.c
@@ -271,7 +271,7 @@ int SoftTraceOff(void)
 
 	unload_MTE_handler(NULL);
 
-	on_each_cpu(btrace_get_end_time, 0, 1, 1);
+	on_each_cpu(btrace_get_end_time, 0, 1);
 	
 #ifdef PI_DEBUG
 	for (i = 0; i < driver_info.num_cpus; ++i)
@@ -306,7 +306,7 @@ int SoftTraceOn(void)
 		return(PU_FAILURE);
 #ifndef STAP_ITRACE
 
-	on_each_cpu(btrace_get_start_time, 0, 1, 1);
+	on_each_cpu(btrace_get_start_time, 0, 1);
 		
 	preempt_disable();
 
--- a/src/driver/pi_counters.c
+++ b/src/driver/pi_counters.c
@@ -514,7 +514,7 @@ int PerfWriteMsr(int msr, int cpu, uint6
    mc.write_value = value;
    mc.cpu         = cpu;
 
-   on_each_cpu(IpiWriteMsr, (void *)&mc, 1, 1);
+   on_each_cpu(IpiWriteMsr, (void *)&mc, 1);
 
    PDEBUG("<< PerfWriteMsr \n");
    return(0);
@@ -537,7 +537,7 @@ int PerfReadMsr(int msr, int cpu, UINT64
    mc.read_values = msr_values;
    mc.cpu         = cpu;
 
-   on_each_cpu(IpiReadMsr, (void *)&mc, 1, 1);
+   on_each_cpu(IpiReadMsr, (void *)&mc, 1);
 
    PDEBUG("<< PerfReadMsr \n");
    return(0);
@@ -660,7 +660,7 @@ int PerfCtrStop(int ctr, int cpu)
    temp_ctr_cpu.ctr = ctr;
    temp_ctr_cpu.cpu = cpu;
 
-   on_each_cpu(IpiPerfCtrStop, (void *)&temp_ctr_cpu, 1, 1);
+   on_each_cpu(IpiPerfCtrStop, (void *)&temp_ctr_cpu, 1);
 
    return(0);            
 }
@@ -722,7 +722,7 @@ int PerfCtrStart(int cpu, int NumDesc, P
 #endif
         // Do it
 	ipi_ctrl.data = &cd[i];
-        on_each_cpu(IpiPerfCtrStart, (void *)&ipi_ctrl, 1, 1);
+        on_each_cpu(IpiPerfCtrStart, (void *)&ipi_ctrl, 1);
    }
 
    return(PU_SUCCESS);            
@@ -748,7 +748,7 @@ int PerfCtrResume(int ctr, int cpu)
    temp_ctr_cpu.ctr = ctr;
    temp_ctr_cpu.cpu = cpu;
 
-   on_each_cpu(IpiPerfCtrResume, (void *)&temp_ctr_cpu, 1, 1);
+   on_each_cpu(IpiPerfCtrResume, (void *)&temp_ctr_cpu, 1);
 
    return(0);            
 }
@@ -774,7 +774,7 @@ int PerfCtrSet(int ctr, int cpu, uint64_
    temp_ctr_cpu.cpu   = cpu;
    temp_ctr_cpu.value = value;
 
-   on_each_cpu(IpiPerfCtrSet, (void *)&temp_ctr_cpu, 1, 1);
+   on_each_cpu(IpiPerfCtrSet, (void *)&temp_ctr_cpu, 1);
 
    return(0);            
 }
@@ -799,7 +799,7 @@ int PerfCtrRead(int ctr, int cpu, uint64
    temp_ctr_cpu.read_values = ctr_val;
    temp_ctr_cpu.read_cycles = cyc_val;
 
-   on_each_cpu(IpiPerfCtrRead, (void *)&temp_ctr_cpu, 1, 1);
+   on_each_cpu(IpiPerfCtrRead, (void *)&temp_ctr_cpu, 1);
 
    return(0);
 }
@@ -818,7 +818,7 @@ int PerfCtrReadAll(int cpu, PERFCTR_DATA
    ipi_ctrl.data = pd;
    ipi_ctrl.cpu  = cpu;
 
-   on_each_cpu(IpiPerfCtrReadAll, (void *)&ipi_ctrl, 1, 1);
+   on_each_cpu(IpiPerfCtrReadAll, (void *)&ipi_ctrl, 1);
 
    return(0);    
 }
--- a/src/driver/pi_ctrevent.c
+++ b/src/driver/pi_ctrevent.c
@@ -789,7 +789,7 @@ int PerfStartCounterEvent(int event, int
    if (rc == 0) {
       // Once we know we have all we need, the request can't fail!
       PDEBUG("-- PerfStartCounterEvent: edef=%p\n", edef);
-      on_each_cpu(IpiStartEvent, (void *)&pi_evt_control, 1, 1);
+      on_each_cpu(IpiStartEvent, (void *)&pi_evt_control);
 
       for (i = 0; i < driver_info.num_cpus; i++) {
          for (s = 0; s < driver_info.max_counter_events; s++) {
@@ -875,7 +875,7 @@ int ManipulateEvent(int event, int funct
    ec.function = function;
    ec.slot     = s;
 
-   on_each_cpu(IpiManipulateEvent, (void *)&ec, 1, 1);
+   on_each_cpu(IpiManipulateEvent, (void *)&ec);
 
    spin_unlock(&CtrAccessLock);
     
@@ -1039,7 +1039,7 @@ int PerfGetCounterForEvent(int event, UI
    ec.ctr_values = ctr_values;
    ec.cyc_values = cyc_values;
 
-   on_each_cpu(IpiGetCounterForEvent, (void *)&ec, 1, 1);
+   on_each_cpu(IpiGetCounterForEvent, (void *)&ec);
 
 //   memcpy((void *)ctr_values, (void *)cv, MappedData->CtrValueArraySize);
 //   if (cyc_values != NULL)
--- a/src/driver/pi_ioctl.c
+++ b/src/driver/pi_ioctl.c
@@ -551,7 +551,7 @@ int pitrace_ioctl(unsigned int tcommand,
 	//
 		
 	case CMD_READ_CYCLES_ON_ALL_CPUS:
-		on_each_cpu(IpiReadCyclesOnAllProcessors, 0, 1, 1);
+		on_each_cpu(IpiReadCyclesOnAllProcessors, 0, 1);
 		break;
 			
 	//
@@ -1138,7 +1138,6 @@ int pitrace_ioctl(unsigned int tcommand,
                                                           in_pr->val3);   // flags
 			break;
 		}
-		
 		//************** MISC **************
 		
 		case CMD_STEALSYSMEM:
--- a/src/driver/pi_ki.c
+++ b/src/driver/pi_ki.c
@@ -112,7 +112,7 @@ int KI_EnableHook(void)
 	// IPI because I want to set the current timestamp using each
 	// processor's TSC.
 	//
-	on_each_cpu(IpiAiInitializeCounters, 0, 1, 1);
+	on_each_cpu(IpiAiInitializeCounters, 0, 1);
 	
 	//
 	// Set this processor's state: He is busy (because we're running).
--- a/src/driver/pi_ptt.c
+++ b/src/driver/pi_ptt.c
@@ -467,7 +467,7 @@ int PttTerminate(void)
 	PttDataEntrySize = MappedData->PttDataEntrySize = sizeof(KERNEL_PTT_DATA);
 	spin_unlock(&ptt_buf_lock);
 
-	on_each_cpu(ptt_cpu_terminate, 0, 1, 1);
+	on_each_cpu(ptt_cpu_terminate, 0, 1);
 
 //	use_counters = 0;
 		
@@ -573,7 +573,7 @@ int PttInit2(void)
 	if (PU_SUCCESS != rc)
 		return (rc);
 
-	on_each_cpu(ptt_cpu_init, 0, 1, 1);
+	on_each_cpu(ptt_cpu_init, 0, 1);
 
 	cpu = get_cpu();
 	c   = &MappedData->cpuData[cpu];
--- a/src/driver/x86_64/pi_itrace.c
+++ b/src/driver/x86_64/pi_itrace.c
@@ -216,7 +216,7 @@ int ITrace_install(uint32_t instflag)
 	perf_need_no_exceptions = 0;
 	
 	if ( !driver_info.itrace_installed ) {
-        	on_each_cpu(PITRACE_InstallHandlers, 0, 0, 0);
+        	on_each_cpu(PITRACE_InstallHandlers, 0, 0);
 		driver_info.itrace_installed        = 1;
 		MappedData->ItraceHandlersInstalled = 1;
 	}	
@@ -247,7 +247,7 @@ int ITrace_remove(void)
 		// !!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!
 		// Watch for per cpu IDT in Linux; a common IDT is used now
 
-		on_each_cpu(PITRACE_RemoveHandlers, 0, 0, 0);
+		on_each_cpu(PITRACE_RemoveHandlers, 0, 0);
 	}
 
 	driver_info.itrace_installed        = 0;
@@ -311,8 +311,8 @@ int ITrace_on(void)
 
 	// set single step
 
-	on_each_cpu(SetBTFInDebugCtlMsr, 0, 1, 1);
-	on_each_cpu(SetTFInEflags, 0, 1, 1);
+	on_each_cpu(SetBTFInDebugCtlMsr, 0, 1);
+	on_each_cpu(SetTFInEflags, 0, 1);
 
 	// start tracing
 	driver_info.itrace_active = 1;
@@ -1231,7 +1231,7 @@ int PI_remove_irq_detect(void)
 		// !!!!!!!!!!!!!!!!! NOTE !!!!!!!!!!!!!!!!
 		// Watch for per cpu IDT in Linux; a common IDT is used now
 
-		on_each_cpu(PITRACE_RemoveHandlers, 0, 0, 0);
+		on_each_cpu(PITRACE_RemoveHandlers, 0, 0);
 	}
 
 	PDEBUG("PI_remove_irq_detect: end\n");
@@ -1257,7 +1257,7 @@ int PI_install_irq_detect(void)
 
 	perf_need_no_exceptions = 1;
 
-	on_each_cpu(PITRACE_InstallHandlers, 0, 0, 0);
+	on_each_cpu(PITRACE_InstallHandlers, 0, 0);
 
 	PDEBUG("PI_install_irq_detect: end\n");
 	return (0);
--- a/src/stap/pi_itrace.template
+++ b/src/stap/pi_itrace.template
@@ -194,7 +194,7 @@ void pi_itrace_cleanup(void)
 	int i;
 	unsigned char tempBuf[BUFFER_WRITE_CHUNK_SIZE];
 
-	on_each_cpu(btrace_get_end_time, 0, 1, 1);
+	on_each_cpu(btrace_get_end_time, 0, 1);
 
 	for (i = 0; i < driver_info.num_cpus; i++) {
 		unsigned char tempBuf[BUFFER_WRITE_CHUNK_SIZE];