On 08/15/2014 01:09 AM, Keith Busch wrote:
The allocation and freeing of blk-mq parts seems a bit asymmetrical to me. The 'tags' belong to the tagset, but any request_queue using that tagset may free the tags. I looked to separate the tag allocation concerns, but that's more time than I have, so this is my quick-fix driver patch, forcing tag access through the hw_ctx.
I moved nvmeq->hctx->tags into nvmeq->tags in the last version. I missed the free's in blk_mq_map_swqueue. Good catch.
The previous method might have another problem. If there's two namespaces, sharing tag set. The hctx_init fn could be called with different hctx for an nvmeq, leading to false tag sharing between nvme queues.
-- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/