Zhang, Xiantao wrote:
Carsten Otte wrote:Zhang, Xiantao wrote:+/* mca_insert_tr + * + * Switch rid when TR reload and needed! + * iord: 1: itr, 2: itr; + * +*/ +static void mca_insert_tr(u64 iord) +{ + + int i; + u64 old_rr; + struct ia64_tr_entry *p; + unsigned long psr; + int cpu = smp_processor_id();What if CONFIG_PREEMPT is on, and we're being preempted and scheduled to a different CPU here? Are we running preempt disabled here? If so, the function header should state that this function needs to be called preempt_disabled.The function insert one TR to local TLB, and doesn't allow preempt before and after the call, so the caller should be with preempt_disablebefore calling into this routine. Maybe the descripiton of this function should contain "Called withpreempt disabled!". Does it make sense ?
Yea, I think a comment would help in that case :-). -- To unsubscribe from this list: send the line "unsubscribe linux-ia64" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html
![]() |