Lines Matching refs:new_state
157 union kvmppc_icp_state old_state, new_state; in icp_rm_try_to_deliver() local
161 old_state = new_state = READ_ONCE(icp->state); in icp_rm_try_to_deliver()
166 success = new_state.cppr > priority && in icp_rm_try_to_deliver()
167 new_state.mfrr > priority && in icp_rm_try_to_deliver()
168 new_state.pending_pri > priority; in icp_rm_try_to_deliver()
175 *reject = new_state.xisr; in icp_rm_try_to_deliver()
176 new_state.xisr = irq; in icp_rm_try_to_deliver()
177 new_state.pending_pri = priority; in icp_rm_try_to_deliver()
184 new_state.need_resend = true; in icp_rm_try_to_deliver()
187 } while (!icp_rm_try_update(icp, old_state, new_state)); in icp_rm_try_to_deliver()
313 union kvmppc_icp_state old_state, new_state; in icp_rm_down_cppr() local
346 old_state = new_state = READ_ONCE(icp->state); in icp_rm_down_cppr()
349 new_state.cppr = new_cppr; in icp_rm_down_cppr()
360 if (new_state.mfrr < new_cppr && in icp_rm_down_cppr()
361 new_state.mfrr <= new_state.pending_pri) { in icp_rm_down_cppr()
362 new_state.pending_pri = new_state.mfrr; in icp_rm_down_cppr()
363 new_state.xisr = XICS_IPI; in icp_rm_down_cppr()
367 resend = new_state.need_resend; in icp_rm_down_cppr()
368 new_state.need_resend = 0; in icp_rm_down_cppr()
370 } while (!icp_rm_try_update(icp, old_state, new_state)); in icp_rm_down_cppr()
386 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_xirr() local
405 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_xirr()
410 new_state.cppr = new_state.pending_pri; in kvmppc_rm_h_xirr()
411 new_state.pending_pri = 0xff; in kvmppc_rm_h_xirr()
412 new_state.xisr = 0; in kvmppc_rm_h_xirr()
414 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_xirr()
425 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_ipi() local
471 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_ipi()
474 new_state.mfrr = mfrr; in kvmppc_rm_h_ipi()
479 if (mfrr < new_state.cppr) { in kvmppc_rm_h_ipi()
481 if (mfrr <= new_state.pending_pri) { in kvmppc_rm_h_ipi()
482 reject = new_state.xisr; in kvmppc_rm_h_ipi()
483 new_state.pending_pri = mfrr; in kvmppc_rm_h_ipi()
484 new_state.xisr = XICS_IPI; in kvmppc_rm_h_ipi()
489 resend = new_state.need_resend; in kvmppc_rm_h_ipi()
490 new_state.need_resend = 0; in kvmppc_rm_h_ipi()
492 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_ipi()
511 union kvmppc_icp_state old_state, new_state; in kvmppc_rm_h_cppr() local
546 old_state = new_state = READ_ONCE(icp->state); in kvmppc_rm_h_cppr()
549 new_state.cppr = cppr; in kvmppc_rm_h_cppr()
551 if (cppr <= new_state.pending_pri) { in kvmppc_rm_h_cppr()
552 reject = new_state.xisr; in kvmppc_rm_h_cppr()
553 new_state.xisr = 0; in kvmppc_rm_h_cppr()
554 new_state.pending_pri = 0xff; in kvmppc_rm_h_cppr()
557 } while (!icp_rm_try_update(icp, old_state, new_state)); in kvmppc_rm_h_cppr()