IB/core: Protect against self-requeue of a cq work item
authorSagi Grimberg <sagi@grimberg.me>
Wed, 8 Mar 2017 20:00:52 +0000 (22:00 +0200)
committerDoug Ledford <dledford@redhat.com>
Fri, 24 Mar 2017 20:40:31 +0000 (16:40 -0400)
commit86f46aba8d1ac3ed0904542158a9b9cb9c7a143c
treee1eaa11ea1e04336059b0b9cba78389bf7e5f03f
parent871a8623d3b40221ad1103aff715dfee0aa4dacf
IB/core: Protect against self-requeue of a cq work item

We need to make sure that the cq work item does not
run when we are destroying the cq. Unlike flush_work,
cancel_work_sync protects against self-requeue of the
work item (which we can do in ib_cq_poll_work).

Signed-off-by: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Bart Van Assche <bart.vanassche@sandisk.com>--
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/core/cq.c