lib/scatterlist: fix memory leak with scsi-mq
Subsystems (2)
PATCH 1/1 lib/scatterlist: fix memory leak with scsi-mq
Fix a memory leak with scsi-mq triggered by commands with large data transfer length.
Fixes c53c6d6a68b1 ("scatterlist: allow chaining to preallocated chunks")
Cc <[email protected]> # 3.17.x
Signed-off-by Tony Battersby <[email protected]>
---
For inclusion in 3.18 and 3.17.x.
lib/scatterlist.c +3 -3
@@ -203,10 +203,10 @@ void __sg_free_table(struct sg_table *ta } table->orig_nents -= sg_size; -if (!skip_first_chunk) { -free_fn (sgl, alloc_size); +if (skip_first_chunk) skip_first_chunk = false; - } +else +free_fn (sgl, alloc_size); sgl = next; }
Quoted 2 lines · Tony Battersby
Fix a memory leak with scsi-mq triggered by commands with large data transfer length.
Thanks, this was indeed caused by a last minute change due to someone complaining about my earlier version being a little too convoluted.
Thanks for tracking this down!
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Tony" == Tony Battersby <[email protected]> writes:
Tony> Fix a memory leak with scsi-mq triggered by commands with large Tony> data transfer length.
Tony> Fixes: c53c6d6a68b1 ("scatterlist: allow chaining to preallocated Tony> chunks")
Reviewed-by Martin K. Petersen <[email protected]>
Signature · 1 line
Martin K. Petersen Oracle Linux Engineering