diff --git a/public/fastbootd.te b/public/fastbootd.te
index bba5ab953b77452b4404dd25624b47832fa9923d..f2134e0aba6c5f5fffd64731e2ad7d9276113db9 100644
--- a/public/fastbootd.te
+++ b/public/fastbootd.te
@@ -39,8 +39,12 @@ recovery_only(`
   allow fastbootd dm_device:blk_file rw_file_perms;
 
   allow fastbootd super_block_device:blk_file rw_file_perms;
-  allow fastbootd system_block_device:blk_file rw_file_perms;
-  allow fastbootd boot_block_device:blk_file rw_file_perms;
+  allow fastbootd system_block_device:blk_file { w_file_perms ioctl };
+  allowxperm fastbootd system_block_device:blk_file ioctl { BLKGETSIZE64 };
+
+
+  allow fastbootd boot_block_device:blk_file { w_file_perms ioctl };
+  allowxperm fastbootd boot_block_device:blk_file ioctl { BLKGETSIZE64 };
 
   allow fastbootd misc_block_device:blk_file rw_file_perms;