diff --git a/public/domain.te b/public/domain.te
index 88abff39726bca0b2d37c765ab397c1f505081ea..8cee03f3f471dd8341a6d1fd650fba05d700abe6 100644
--- a/public/domain.te
+++ b/public/domain.te
@@ -177,7 +177,7 @@ allowxperm domain domain:{ unix_dgram_socket unix_stream_socket }
 ###
 
 # All socket ioctls must be restricted to a whitelist.
-neverallowxperm { domain -system_server } domain:socket_class_set ioctl { 0 };
+neverallowxperm domain domain:socket_class_set ioctl { 0 };
 
 # Do not allow any domain other than init or recovery to create unlabeled files.
 neverallow { domain -init -recovery } unlabeled:dir_file_class_set create;
diff --git a/public/system_server.te b/public/system_server.te
index ac1e8bd60ad0b90630112850f6363191f4e72187..275ee712ff17e17a8d86aa5e30675e8d28b33b8d 100644
--- a/public/system_server.te
+++ b/public/system_server.te
@@ -81,7 +81,7 @@ allow system_server self:netlink_generic_socket create_socket_perms_no_ioctl;
 # to the kernel. The ioctl permission is specifically omitted here, but may
 # be added to device specific policy along with the ioctl commands to be
 # whitelisted.
-allow system_server self:socket create_socket_perms;
+allow system_server self:socket create_socket_perms_no_ioctl;
 
 # Set and get routes directly via netlink.
 allow system_server self:netlink_route_socket nlmsg_write;