diff --git a/[refs] b/[refs] index 0b2e26ecf93e..10b3c7ddc5fd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 7f53f9d2424533256ae86f7df5661a17de743de8 +refs/heads/master: aba2080f3f1639f9202f1a52993669844abcfb80 diff --git a/trunk/drivers/block/nvme.c b/trunk/drivers/block/nvme.c index 014a7f6e39bc..bcc780ac4ec0 100644 --- a/trunk/drivers/block/nvme.c +++ b/trunk/drivers/block/nvme.c @@ -781,8 +781,10 @@ static int adapter_delete_sq(struct nvme_dev *dev, u16 sqid) static void nvme_free_queue(struct nvme_dev *dev, int qid) { struct nvme_queue *nvmeq = dev->queues[qid]; + int vector = dev->entry[nvmeq->cq_vector].vector; - free_irq(dev->entry[nvmeq->cq_vector].vector, nvmeq); + irq_set_affinity_hint(vector, NULL); + free_irq(vector, nvmeq); /* Don't tell the adapter to delete the admin queue */ if (qid) {