Label /dev/goldfish_pipe as qemu_device
In goldfish kernel 3.10, qemu_pipe has been renamed to goldfish_pipe. However, in the emulator's SELinux policy, there is no specific security context assigned to /dev/goldfish_pipe, and the one inherited from /dev (u:object_r:device:s0) prevents various processes (qemud, qemu-props, etc.) from reading and writing goldfish_pipe. Consequently, the classic x86_64 emulator will not boot if GPU emulation is enabled ("-gpu host"), and does not render the UI correctly if launched with "-gpu off". Fix this issue by assigning /dev/goldfish_pipe the same security context as /dev/qemu_pipe. This CL also benefits the new ("ranchu") emulator, where all supported ABIs (arm64, mips64, x86 and x86_64) use 3.10-based kernels. Without this fix, the new emulator boots and works, but there are avc denials related to goldfish_pipe. Last but not least, it is now possible to boot the classic x86 emulator with a 3.10-based kernel instead of the current 3.4-based one, without disabling SELinux. Change-Id: Iad979c0ee9d0a410be12b83ac1bef9476b50a6dc Signed-off-by: Yu Ning <yu.ning@intel.com>
This commit is contained in:
parent
7033819eeb
commit
a5053e6b35
|
@ -1,6 +1,7 @@
|
|||
/dev/block/mtdblock0 u:object_r:system_block_device:s0
|
||||
/dev/block/mtdblock1 u:object_r:userdata_block_device:s0
|
||||
/dev/block/mtdblock2 u:object_r:cache_block_device:s0
|
||||
/dev/goldfish_pipe u:object_r:qemu_device:s0
|
||||
/dev/qemu_.* u:object_r:qemu_device:s0
|
||||
/dev/socket/qemud u:object_r:qemud_socket:s0
|
||||
/system/bin/qemud u:object_r:qemud_exec:s0
|
||||
|
|
Loading…
Reference in New Issue