diff --git a/file_contexts b/file_contexts
index 085a57bb6a2025247bd4e69ecf9417de550f9fe3..d45d8f6f8d6fc5522740fd280d843412fd001cd8 100644
--- a/file_contexts
+++ b/file_contexts
@@ -76,6 +76,7 @@
 /dev/input(/.*)		u:object_r:input_device:s0
 /dev/iio:device[0-9]+   u:object_r:iio_device:s0
 /dev/ion		u:object_r:ion_device:s0
+/dev/klist		u:object_r:klist_device:s0
 /dev/kmem		u:object_r:kmem_device:s0
 /dev/log(/.*)?		u:object_r:log_device:s0
 /dev/mem		u:object_r:kmem_device:s0
diff --git a/klist.te b/klist.te
new file mode 100644
index 0000000000000000000000000000000000000000..a7931eed4ff5bc438cee2d7d4c6e9201a3f67e3d
--- /dev/null
+++ b/klist.te
@@ -0,0 +1,4 @@
+type klist_device, dev_type;
+
+# Allow shell user access to KList.
+allow shell klist_device:chr_file { read write open ioctl };