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_disable > before calling into this routine. > Maybe the descripiton of this function should contain "Called with > preempt disabled!". Does it make sense ? Yea, I think a comment would help in that case :-). _______________________________________________ Virtualization mailing list Virtualization@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/virtualization