pr_debug("%s\n", __FUNCTION__);
 
-       if (test_bit(SPU_CONTEXT_SWITCH_ACTIVE, &spu->flags)) {
-               /* SLBs are pre-loaded for context switch, so
-                * we should never get here!
-                */
-               printk("%s: invalid access during switch!\n", __func__);
-               return 1;
-       }
        slb.esid = (ea & ESID_MASK) | SLB_ESID_V;
 
        switch(REGION_ID(ea)) {
                return 0;
        }
 
-       if (test_bit(SPU_CONTEXT_SWITCH_ACTIVE, &spu->flags)) {
-               printk("%s: invalid access during switch!\n", __func__);
-               return 1;
-       }
-
        spu->class_0_pending = 0;
        spu->dar = ea;
        spu->dsisr = dsisr;
 
         * Restore, Step 23.
         *     Change the software context switch pending flag
         *     to context switch active.
+        *
+        *     This implementation does not uses a switch active flag.
         */
-       set_bit(SPU_CONTEXT_SWITCH_ACTIVE, &spu->flags);
        clear_bit(SPU_CONTEXT_SWITCH_PENDING, &spu->flags);
        mb();
 }
 {
        /* Restore, Step 74:
         *     Reset the "context switch active" flag.
+        *     Not performed by this implementation.
         */
-       clear_bit(SPU_CONTEXT_SWITCH_ACTIVE, &spu->flags);
-       mb();
 }
 
 static inline void reenable_interrupts(struct spu_state *csa, struct spu *spu)
 
 #define MFC_PRIV_ATTN_EVENT                 0x00000800
 #define MFC_MULTI_SRC_EVENT                 0x00001000
 
-/* Flags indicating progress during context switch. */
+/* Flag indicating progress during context switch. */
 #define SPU_CONTEXT_SWITCH_PENDING     0UL
-#define SPU_CONTEXT_SWITCH_ACTIVE      1UL
 
 struct spu_context;
 struct spu_runqueue;