diff --git a/libsel4utils/include/sel4utils/vspace.h b/libsel4utils/include/sel4utils/vspace.h
index 17d589d..5a5fa86 100644
--- a/libsel4utils/include/sel4utils/vspace.h
+++ b/libsel4utils/include/sel4utils/vspace.h
@@ -65,6 +65,7 @@
     seL4_CapRights_t rights;
     int cacheable;
     int malloced;
+    bool rights_deferred;
     struct sel4utils_res *next;
 };
 
diff --git a/libsel4utils/include/sel4utils/vspace_internal.h b/libsel4utils/include/sel4utils/vspace_internal.h
index 55f545d..f1a391b 100644
--- a/libsel4utils/include/sel4utils/vspace_internal.h
+++ b/libsel4utils/include/sel4utils/vspace_internal.h
@@ -445,6 +445,8 @@
                                               int cacheable, void **vaddr);
 reservation_t sel4utils_reserve_range_at(vspace_t *vspace, void *vaddr, size_t size,
                                          seL4_CapRights_t rights, int cacheable);
+reservation_t sel4utils_reserve_deferred_rights_range_at(vspace_t *vspace, void *vaddr,
+                                                         size_t size, int cacheable);
 void sel4utils_free_reservation(vspace_t *vspace, reservation_t reservation);
 void sel4utils_free_reservation_by_vaddr(vspace_t *vspace, void *vaddr);
 void sel4utils_tear_down(vspace_t *vspace, vka_t *vka);
diff --git a/libsel4utils/src/vspace/bootstrap.c b/libsel4utils/src/vspace/bootstrap.c
index 655fdf2..ad06562 100644
--- a/libsel4utils/src/vspace/bootstrap.c
+++ b/libsel4utils/src/vspace/bootstrap.c
@@ -75,6 +75,7 @@
 
     vspace->reserve_range_aligned = sel4utils_reserve_range_aligned;
     vspace->reserve_range_at = sel4utils_reserve_range_at;
+    vspace->reserve_deferred_rights_range_at = sel4utils_reserve_deferred_rights_range_at;
     vspace->free_reservation = sel4utils_free_reservation;
     vspace->free_reservation_by_vaddr = sel4utils_free_reservation_by_vaddr;
 
diff --git a/libsel4utils/src/vspace/vspace.c b/libsel4utils/src/vspace/vspace.c
index 032cfb8..01254d0 100644
--- a/libsel4utils/src/vspace/vspace.c
+++ b/libsel4utils/src/vspace/vspace.c
@@ -597,6 +597,15 @@
     return reservation;
 }
 
+reservation_t sel4utils_reserve_deferred_rights_range_at(vspace_t *vspace, void *vaddr, size_t size, int cacheable)
+{
+    reservation_t reservation = sel4utils_reserve_range_at(vspace, vaddr, size, seL4_NoRights, cacheable);
+    if (reservation.res != NULL) {
+        ((sel4utils_res_t *)reservation.res)->rights_deferred = true;
+    }
+    return reservation;
+}
+
 void sel4utils_free_reservation(vspace_t *vspace, reservation_t reservation)
 {
     sel4utils_alloc_data_t *data = get_alloc_data(vspace);
