Messages in this thread | | | Date | Fri, 18 Jul 2014 11:45:18 +0200 | From | Christoph Hellwig <> | Subject | Re: [PATCH 1/3] blk-mq: cleanup after blk_mq_init_rq_map failures |
| |
On Thu, Jul 17, 2014 at 02:39:09PM -0500, Robert Elliott wrote: > In blk-mq.c blk_mq_alloc_tag_set, if: > set->tags = kmalloc_node() > succeeds, but one of the blk_mq_init_rq_map() calls fails, > goto out_unwind; > needs to free set->tags so the caller is not obligated > to do so. None of the current callers (null_blk, > virtio_blk, virtio_blk, or the forthcoming scsi-mq) > do so. > > set->tags needs to be set to NULL after doing so, > so other tag cleanup logic doesn't try to free > a stale pointer later. Also set it to NULL > in blk_mq_free_tag_set. > > Tested with error injection on the forthcoming > scsi-mq + hpsa combination. > > Signed-off-by: Robert Elliott <elliott@hp.com>
Looks good,
Reviewed-by: Christoph Hellwig <hch@lst.de>
| |