On Wed, Mar 31, 2021 at 08:16:50AM +0800, Ming Lei wrote: > On Tue, Mar 30, 2021 at 06:53:30PM +0200, Christoph Hellwig wrote: > > On Tue, Mar 23, 2021 at 04:14:39PM +0800, Ming Lei wrote: > > > blktrace may allocate lots of memory, if the process is terminated > > > by user or OOM, we need to provide one chance to remove the trace > > > buffer, otherwise memory leak may be caused. > > > > > > Fix the issue by shutdown blktrace in case of task exiting in > > > blkdev_close(). > > > > > > Signed-off-by: Ming Lei <ming.lei@xxxxxxxxxx> > > > > This just seems weird. blktrace has no relationship to open > > block device instances. > > blktrace still needs to open one blkdev, then send its own ioctl > commands to block layer. In case of OOM, the allocated memory in > these ioctl commands won't be released. > > Or any other suggestion? Not much we can do there I think. If we want to autorelease memory it needs to be an API that ties the memory allocation to an FD.