diff --git a/hwcomposer.cpp b/hwcomposer.cpp
index b4fb340..18f6921 100644
--- a/hwcomposer.cpp
+++ b/hwcomposer.cpp
@@ -235,6 +235,21 @@
   return ret;
 }
 
+static void hwc_add_layer_to_retire_fence(hwc_layer_1_t *layer,
+    hwc_display_contents_1_t *display_contents) {
+  if (layer->releaseFenceFd < 0)
+    return;
+
+  if (display_contents->retireFenceFd >= 0) {
+    int old_retire_fence = display_contents->retireFenceFd;
+    display_contents->retireFenceFd = sync_merge("dc_retire", old_retire_fence,
+                                                 layer->releaseFenceFd);
+    close(old_retire_fence);
+  } else {
+    display_contents->retireFenceFd = dup(layer->releaseFenceFd);
+  }
+}
+
 static int hwc_set(hwc_composer_device_1_t *dev, size_t num_displays,
                    hwc_display_contents_1_t **display_contents) {
   ATRACE_CALL();
@@ -286,6 +301,8 @@
         hwc_set_cleanup(num_displays, display_contents, composition);
         return ret;
       }
+      hwc_add_layer_to_retire_fence(layer, dc);
+
       --num_planes;
     }
 
@@ -400,6 +417,7 @@
         hwc_set_cleanup(num_displays, display_contents, composition);
         return ret;
       }
+      hwc_add_layer_to_retire_fence(&composite_layer, dc);
 
       fb->set_release_fence_fd(composite_layer.releaseFenceFd);
       hd->fb_idx = (hd->fb_idx + 1) % HWC_FB_BUFFERS;
