Lines Matching refs:new_state
159 union kvmppc_icp_state old_state, new_state; in icp_rm_try_to_deliver() local
163 old_state = new_state = READ_ONCE(icp->state); in icp_rm_try_to_deliver()
168 success = new_state.cppr > priority && in icp_rm_try_to_deliver()
169 new_state.mfrr > priority && in icp_rm_try_to_deliver()
170 new_state.pending_pri > priority; in icp_rm_try_to_deliver()
177 *reject = new_state.xisr; in icp_rm_try_to_deliver()
178 new_state.xisr = irq; in icp_rm_try_to_deliver()
179 new_state.pending_pri = priority; in icp_rm_try_to_deliver()
186 new_state.need_resend = true; in icp_rm_try_to_deliver()
189 } while (!icp_rm_try_update(icp, old_state, new_state)); in icp_rm_try_to_deliver()
315 union kvmppc_icp_state old_state, new_state; in icp_rm_down_cppr() local
348 old_state = new_state = READ_ONCE(icp->state); in icp_rm_down_cppr()
351 new_state.cppr = new_cppr; in icp_rm_down_cppr()
362 if (new_state.mfrr < new_cppr && in icp_rm_down_cppr()
363 new_state.mfrr <= new_state.pending_pri) { in icp_rm_down_cppr()
364 new_state.pending_pri = new_state.mfrr; in icp_rm_down_cppr()
365 new_state.xisr = XICS_IPI; in icp_rm_down_cppr()
369 resend = new_state.need_resend; in icp_rm_down_cppr()
370 new_state.need_resend = 0; in icp_rm_down_cppr()
372 } while (!icp_rm_try_update(icp, old_state, new_state)); in icp_rm_down_cppr()
388 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_xirr() local
407 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_xirr()
412 new_state.cppr = new_state.pending_pri; in kvmppc_rm_h_xirr()
413 new_state.pending_pri = 0xff; in kvmppc_rm_h_xirr()
414 new_state.xisr = 0; in kvmppc_rm_h_xirr()
416 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_xirr()
427 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_ipi() local
473 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_ipi()
476 new_state.mfrr = mfrr; in kvmppc_rm_h_ipi()
481 if (mfrr < new_state.cppr) { in kvmppc_rm_h_ipi()
483 if (mfrr <= new_state.pending_pri) { in kvmppc_rm_h_ipi()
484 reject = new_state.xisr; in kvmppc_rm_h_ipi()
485 new_state.pending_pri = mfrr; in kvmppc_rm_h_ipi()
486 new_state.xisr = XICS_IPI; in kvmppc_rm_h_ipi()
491 resend = new_state.need_resend; in kvmppc_rm_h_ipi()
492 new_state.need_resend = 0; in kvmppc_rm_h_ipi()
494 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_ipi()
513 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_cppr() local
548 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_cppr()
551 new_state.cppr = cppr; in kvmppc_rm_h_cppr()
553 if (cppr <= new_state.pending_pri) { in kvmppc_rm_h_cppr()
554 reject = new_state.xisr; in kvmppc_rm_h_cppr()
555 new_state.xisr = 0; in kvmppc_rm_h_cppr()
556 new_state.pending_pri = 0xff; in kvmppc_rm_h_cppr()
559 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_cppr()