for_each_crtc_in_state(state, crtc, crtc_state, i) {
                struct intel_crtc_state *pipe_config =
                        to_intel_crtc_state(crtc_state);
-               bool modeset;
 
                /* Catch I915_MODE_FLAG_INHERITED */
                if (crtc_state->mode.private_flags != crtc->state->mode.private_flags)
                        continue;
                }
 
-               modeset = needs_modeset(crtc_state);
-
-               if (!modeset)
+               if (!needs_modeset(crtc_state))
                        continue;
 
+               /* FIXME: For only active_changed we shouldn't need to do any
+                * state recomputation at all. */
+
                ret = drm_atomic_add_affected_connectors(state, crtc);
                if (ret)
                        return ret;
                if (ret)
                        return ret;
 
-               if (!i915.fastboot ||
-                   !intel_pipe_config_compare(state->dev,
+               if (i915.fastboot &&
+                   intel_pipe_config_compare(state->dev,
                                        to_intel_crtc_state(crtc->state),
                                        pipe_config, true)) {
-                       modeset = crtc_state->mode_changed = true;
+                       crtc_state->mode_changed = false;
+               }
+
+               if (needs_modeset(crtc_state)) {
+                       any_ms = true;
 
                        ret = drm_atomic_add_affected_planes(state, crtc);
                        if (ret)
                                return ret;
                }
 
-               any_ms = modeset;
-               intel_dump_pipe_config(to_intel_crtc(crtc),
-                                      pipe_config,
-                                      modeset ? "[modeset]" : "[fastboot]");
+               intel_dump_pipe_config(to_intel_crtc(crtc), pipe_config,
+                                      needs_modeset(crtc_state) ?
+                                      "[modeset]" : "[fastset]");
        }
 
        if (any_ms) {