/* To really, really be sure that nothing is being done by other TCs, halt them all. This code assumes that a DVPE has already been done, so while their Halted state is theoretically architecturally unstable, in practice, it's not going to change while we're looking at it.  */
void smtc_cflush_lockdown(void)
/* To really, really be sure that nothing is being done by other TCs, halt them all. This code assumes that a DVPE has already been done, so while their Halted state is theoretically architecturally unstable, in practice, it's not going to change while we're looking at it.  */
void smtc_cflush_lockdown(void)
{
	int cpu;
	for_each_online_cpu(cpu) {
		if (cpu != smp_processor_id()) {
			settc(cpu_data[cpu].tc_id);
			halt_state_save[cpu] = read_tc_c0_tchalt();
			write_tc_c0_tchalt(TCHALT_H);
		}
	}
	mips_ihb();
}