diff --git a/private/system_server.te b/private/system_server.te
index 2bfd4cda69f264bba83a9a164a40006d6f1a709a..99dc66314f2310ef033cbc31fc4948f122e972d3 100644
--- a/private/system_server.te
+++ b/private/system_server.te
@@ -99,7 +99,7 @@ allow system_server self:socket create_socket_perms_no_ioctl;
 allow system_server self:netlink_route_socket nlmsg_write;
 
 # Kill apps.
-allow system_server appdomain:process { sigkill signal };
+allow system_server appdomain:process { getpgid sigkill signal };
 
 # Set scheduling info for apps.
 allow system_server appdomain:process { getsched setsched };
diff --git a/public/init.te b/public/init.te
index cf9488f87fec769cd37f0fb926b76bd653141cbe..01d308afd61c9833c8416b25d738b0a038fe4cc9 100644
--- a/public/init.te
+++ b/public/init.te
@@ -282,7 +282,7 @@ allow init misc_logd_file:file { open create getattr setattr write };
 
 # Support "adb shell stop"
 allow init self:capability kill;
-allow init domain:process { sigkill signal };
+allow init domain:process { getpgid sigkill signal };
 
 # Init creates keystore's directory on boot, and walks through
 # the directory as part of a recursive restorecon.