ueventd: duplicate /dev/ashmem
We want ashmem to only be used via libcutils API, with long-term goal being deprecation of ashmem with memfd. To do that we route libcutils to a new source of ashmem fds. We then phase out uses of /dev/ashmem that doesn't go through libcutils using SELinux. In Q, we introduced ashmemd as the source of ashmem fds to libcutils. However, having a separate process and, consequently, binder hops to handle /dev/ashmem results in performance/memory overhead. To address the overhead, replace ashmemd with a duplicate of /dev/ashmem. Name it /dev/ashmem<boot_id>, where boot_id is a random number generated on each boot. This way we make sure that developers don't accidentally depend on /dev/ashmem<boot_id>, as that name can't be hardcoded. Bug: 139855428 Test: writing "add"/"remove" to /sys/class/misc/ashmem/uevent correctly adds/removes /dev/ashmem and /dev/ashmem/boot_id Change-Id: I36d23116048bfcd99903ba46cc133161835a2cfa
Loading
Please register or sign in to comment