/* Generic udelay assumes that if preemption is allowed and the thread migrates to another CPU, that the ITC values are synchronized across all CPUs.  */
static void ia64_itc_udelay(unsigned long usecs)
/* Generic udelay assumes that if preemption is allowed and the thread migrates to another CPU, that the ITC values are synchronized across all CPUs.  */
static void ia64_itc_udelay(unsigned long usecs)
{
	unsigned long start = ia64_get_itc();
	unsigned long end = start + usecs*local_cpu_data->cyc_per_usec;
	while (time_before(ia64_get_itc(), end))
		cpu_relax();
}