On 7/11/19 1:22 PM, Wenwen Wang wrote:
> From: Wenwen Wang <wen...@cs.uga.edu>
> 
> In bio_integrity_prep(), a kernel buffer is allocated through kmalloc() to
> hold integrity metadata. Later on, the buffer will be attached to the bio
> structure through bio_integrity_add_page(), which returns the number of
> bytes of integrity metadata attached. Due to unexpected situations,
> bio_integrity_add_page() may return 0. As a result, bio_integrity_prep()
> needs to be terminated with 'false' returned to indicate this error.
> However, the allocated kernel buffer is not freed on this execution path,
> leading to a memory leak.
> 
> To fix this issue, free the allocated buffer before returning from
> bio_integrity_prep().

Applied, thanks.

-- 
Jens Axboe

Reply via email to