ANDROID: dma-buf: Make DMA-BUF sysfs stats kobjects not send uevents
DMA-BUF per-buffer attachment stats are present at /sys/kernel/dma-buf/buffers/<ino>/attachments. Since a kset of name 'attachment' is created everytime a buffer is allocated, disable uevents from the kset to avoid their userspace overhead. The ksets 'dma-buf' and 'buffers' do not need uevents disabled since they are emitted just once but the patch does it for uniformity. Bug: 186155231 Change-Id: I29009dd2aa0bc018c18bca7a1e0a068f4480cf13 Signed-off-by: Hridya Valsaraju <hridya@google.com>
This commit is contained in:
parent
396a6adfd3
commit
32124e310c
1 changed files with 19 additions and 3 deletions
|
|
@ -221,15 +221,30 @@ void dma_buf_stats_teardown(struct dma_buf *dmabuf)
|
|||
kobject_put(&sysfs_entry->kobj);
|
||||
}
|
||||
|
||||
/*
|
||||
* Statistics files do not need to send uevents.
|
||||
*/
|
||||
static int dmabuf_sysfs_uevent_filter(struct kset *kset, struct kobject *kobj)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static const struct kset_uevent_ops dmabuf_sysfs_no_uevent_ops = {
|
||||
.filter = dmabuf_sysfs_uevent_filter,
|
||||
};
|
||||
|
||||
static struct kset *dma_buf_stats_kset;
|
||||
static struct kset *dma_buf_per_buffer_stats_kset;
|
||||
int dma_buf_init_sysfs_statistics(void)
|
||||
{
|
||||
dma_buf_stats_kset = kset_create_and_add("dmabuf", NULL, kernel_kobj);
|
||||
dma_buf_stats_kset = kset_create_and_add("dmabuf",
|
||||
&dmabuf_sysfs_no_uevent_ops,
|
||||
kernel_kobj);
|
||||
if (!dma_buf_stats_kset)
|
||||
return -ENOMEM;
|
||||
|
||||
dma_buf_per_buffer_stats_kset = kset_create_and_add("buffers", NULL,
|
||||
dma_buf_per_buffer_stats_kset = kset_create_and_add("buffers",
|
||||
&dmabuf_sysfs_no_uevent_ops,
|
||||
&dma_buf_stats_kset->kobj);
|
||||
if (!dma_buf_per_buffer_stats_kset) {
|
||||
kset_unregister(dma_buf_stats_kset);
|
||||
|
|
@ -275,7 +290,8 @@ int dma_buf_stats_setup(struct dma_buf *dmabuf)
|
|||
goto err_sysfs_dmabuf;
|
||||
|
||||
/* create the directory for attachment stats */
|
||||
attach_stats_kset = kset_create_and_add("attachments", NULL,
|
||||
attach_stats_kset = kset_create_and_add("attachments",
|
||||
&dmabuf_sysfs_no_uevent_ops,
|
||||
&sysfs_entry->kobj);
|
||||
if (!attach_stats_kset) {
|
||||
ret = -ENOMEM;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue