ide: fix memory leak when flush command is issued
commitff77456ae8fcd2d3140de34019fb75b8c345f185
authorMaxime Bizon <mbizon@freebox.fr>
Thu, 16 Jul 2009 06:32:52 +0000 (16 06:32 +0000)
committerGreg Kroah-Hartman <gregkh@suse.de>
Sun, 16 Aug 2009 21:19:19 +0000 (16 14:19 -0700)
tree1b70352d5a5a6ec8aadac9ee6c85319f735ca81b
parentdf383787f26f8a16e65c7648750c717aee425da2
ide: fix memory leak when flush command is issued

commit bc146d23d1358af43f03793c3ad8c9f16bbcffcb upstream.

I'm using ide on 2.6.30.1 with xfs filesystem. I noticed a kernel memory
leak after writing lots of data, the kmalloc-96 slab cache keeps
growing. It seems the struct ide_cmd kmalloced by idedisk_prepare_flush
is never kfreed.

Commit a09485df9cda49fbde2766c86eb18a9cae585162 ("ide: move request
type specific code from ide_end_drive_cmd() to callers (v3)") and
f505d49ffd25ed062e76ffd17568d3937fcd338c ("ide: fix barriers support")
cause this regression, cmd->rq must now be set for ide_complete_cmd to
honor the IDE_TFLAG_DYN flag.

Signed-off-by: Maxime Bizon <mbizon@freebox.fr>
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Cc: Simon Kirby <sim@netnation.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
drivers/ide/ide-disk.c