diff --git a/device.te b/device.te
index 508c0ebffa2a98c76aa1cd0bbfd3387f0c4f9844..76302cdb9b953f7695baa0021cd666b149a3ff92 100644
--- a/device.te
+++ b/device.te
@@ -15,6 +15,7 @@ type radio_device, dev_type;
 type ram_device, dev_type;
 type console_device, dev_type;
 type cpuctl_device, dev_type;
+type fscklogs, dev_type;
 type full_device, dev_type;
 type graphics_device, dev_type;
 type hw_random_device, dev_type;
diff --git a/file_contexts b/file_contexts
index d8315a1f69a44127bbdfd974f97135adc25770e1..41f9b1c71d66fe2380fae57fc9ad98fa27c23a3c 100644
--- a/file_contexts
+++ b/file_contexts
@@ -45,6 +45,7 @@
 /dev/cpuctl(/.*)?	u:object_r:cpuctl_device:s0
 /dev/device-mapper	u:object_r:dm_device:s0
 /dev/eac		u:object_r:audio_device:s0
+/dev/fscklogs(/.*)?	u:object_r:fscklogs:s0
 /dev/full		u:object_r:full_device:s0
 /dev/fuse		u:object_r:fuse_device:s0
 /dev/graphics(/.*)?	u:object_r:graphics_device:s0
diff --git a/system_server.te b/system_server.te
index 1ffa34d2b36620f96f17acba8cee86c7c538369c..4d79c1afbdd05233a2fc39ca20f429a333923395 100644
--- a/system_server.te
+++ b/system_server.te
@@ -212,3 +212,8 @@ allow system_server hw_random_device:chr_file r_file_perms;
 
 # Access to wake locks
 allow system_server sysfs_wake_lock:file rw_file_perms;
+
+# Read and delete files under /dev/fscklogs.
+r_dir_file(system_server, fscklogs)
+allow system_server fscklogs:dir { write remove_name };
+allow system_server fscklogs:file unlink;