struct context_policy policy;
        u32 execution_quantum;
        u32 preemption_timeout;
-       bool missing = false;
        unsigned long flags;
        int ret;
 
                __guc_context_policy_add_preempt_to_idle(&policy, 1);
 
        ret = __guc_context_set_context_policies(guc, &policy, loop);
-       missing = ret != 0;
-
-       if (!missing && intel_context_is_parent(ce)) {
-               struct intel_context *child;
-
-               for_each_child(ce, child) {
-                       __guc_context_policy_start_klv(&policy, child->guc_id.id);
-
-                       if (engine->flags & I915_ENGINE_WANT_FORCED_PREEMPTION)
-                               __guc_context_policy_add_preempt_to_idle(&policy, 1);
-
-                       child->guc_state.prio = ce->guc_state.prio;
-                       __guc_context_policy_add_priority(&policy, ce->guc_state.prio);
-                       __guc_context_policy_add_execution_quantum(&policy, execution_quantum);
-                       __guc_context_policy_add_preemption_timeout(&policy, preemption_timeout);
-
-                       ret = __guc_context_set_context_policies(guc, &policy, loop);
-                       if (ret) {
-                               missing = true;
-                               break;
-                       }
-               }
-       }
 
        spin_lock_irqsave(&ce->guc_state.lock, flags);
-       if (missing)
+       if (ret != 0)
                set_context_policy_required(ce);
        else
                clr_context_policy_required(ce);