Lines Matching refs:new_state
339 union kvmppc_icp_state old_state, new_state;
346 old_state = new_state = READ_ONCE(icp->state);
351 success = new_state.cppr > priority &&
352 new_state.mfrr > priority &&
353 new_state.pending_pri > priority;
360 *reject = new_state.xisr;
361 new_state.xisr = irq;
362 new_state.pending_pri = priority;
369 new_state.need_resend = true;
372 } while (!icp_try_update(icp, old_state, new_state, false));
516 union kvmppc_icp_state old_state, new_state;
549 old_state = new_state = READ_ONCE(icp->state);
552 new_state.cppr = new_cppr;
563 if (new_state.mfrr < new_cppr &&
564 new_state.mfrr <= new_state.pending_pri) {
565 WARN_ON(new_state.xisr != XICS_IPI &&
566 new_state.xisr != 0);
567 new_state.pending_pri = new_state.mfrr;
568 new_state.xisr = XICS_IPI;
572 resend = new_state.need_resend;
573 new_state.need_resend = 0;
575 } while (!icp_try_update(icp, old_state, new_state, true));
588 union kvmppc_icp_state old_state, new_state;
603 old_state = new_state = READ_ONCE(icp->state);
608 new_state.cppr = new_state.pending_pri;
609 new_state.pending_pri = 0xff;
610 new_state.xisr = 0;
612 } while (!icp_try_update(icp, old_state, new_state, true));
622 union kvmppc_icp_state old_state, new_state;
670 old_state = new_state = READ_ONCE(icp->state);
673 new_state.mfrr = mfrr;
678 if (mfrr < new_state.cppr) {
680 if (mfrr <= new_state.pending_pri) {
681 reject = new_state.xisr;
682 new_state.pending_pri = mfrr;
683 new_state.xisr = XICS_IPI;
688 resend = new_state.need_resend;
689 new_state.need_resend = 0;
691 } while (!icp_try_update(icp, old_state, new_state, local));
723 union kvmppc_icp_state old_state, new_state;
756 old_state = new_state = READ_ONCE(icp->state);
759 new_state.cppr = cppr;
761 if (cppr <= new_state.pending_pri) {
762 reject = new_state.xisr;
763 new_state.xisr = 0;
764 new_state.pending_pri = 0xff;
767 } while (!icp_try_update(icp, old_state, new_state, true));
1105 union kvmppc_icp_state old_state, new_state;
1136 new_state.raw = 0;
1137 new_state.cppr = cppr;
1138 new_state.xisr = xisr;
1139 new_state.mfrr = mfrr;
1140 new_state.pending_pri = pending_pri;
1161 if (new_state.mfrr <= old_state.mfrr) {
1163 new_state.need_resend = old_state.need_resend;
1166 new_state.need_resend = 0;
1168 } while (!icp_try_update(icp, old_state, new_state, false));