On Tue, Jan 04, 2022 at 03:51:48PM -0800, Hridya Valsaraju wrote: > Recently, we noticed an issue where a process went into direct reclaim > while holding the kernfs rw semaphore for sysfs in write(exclusive) > mode. This caused processes who were doing DMA-BUF exports and releases > to go into uninterruptible sleep since they needed to acquire the same > semaphore for the DMA-BUF sysfs entry creation/deletion. In order to avoid > blocking DMA-BUF export/release for an indeterminate amount of time > while another process is holding the sysfs rw semaphore in exclusive > mode, this patch moves the per-buffer sysfs file creation/deleteion to > a kthread. > > Fixes: bdb8d06dfefd ("dmabuf: Add the capability to expose DMA-BUF stats in sysfs") > Signed-off-by: Hridya Valsaraju <hridya@xxxxxxxxxx> > --- > drivers/dma-buf/dma-buf-sysfs-stats.c | 343 ++++++++++++++++++++++++-- > include/linux/dma-buf.h | 46 ++++ > 2 files changed, 366 insertions(+), 23 deletions(-) Crazy, but if this works in your testing, it looks ok to me. Nice work. Reviewed-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>