mchk->mcic, 2);
 
        /*
-        * Combine mcic with previously injected machine checks and
-        * indicate them all together as described in the Principles
-        * of Operation, Chapter 11, Interruption action
+        * Because repressible machine checks can be indicated along with
+        * exigent machine checks (PoP, Chapter 11, Interruption action)
+        * we need to combine cr14, mcic and external damage code.
+        * Failing storage address and the logout area should not be or'ed
+        * together, we just indicate the last occurrence of the corresponding
+        * machine check
         */
+       mchk->cr14 |= irq->u.mchk.cr14;
        mchk->mcic |= irq->u.mchk.mcic;
+       mchk->ext_damage_code |= irq->u.mchk.ext_damage_code;
+       mchk->failing_storage_address = irq->u.mchk.failing_storage_address;
+       memcpy(&mchk->fixed_logout, &irq->u.mchk.fixed_logout,
+              sizeof(mchk->fixed_logout));
        if (mchk->mcic & MCHK_EX_MASK)
                set_bit(IRQ_PEND_MCHK_EX, &li->pending_irqs);
        else if (mchk->mcic & MCHK_REP_MASK)