On 08/04/17 17:29, James Smart wrote:
> +     /* Cleanup defer'ed IOs in queue */
> +     list_for_each_entry(deferfcp, &queue->avail_defer_list, req_list) {
> +             list_del(&deferfcp->req_list);
> +             kfree(deferfcp);
> +     }

Hello James,

Coverity reports a user-after-free for the above code:

*** CID 1416424:  Memory - illegal accesses  (USE_AFTER_FREE)
/drivers/nvme/target/fc.c: 738 in nvmet_fc_delete_target_queue()
732                                             &tgtport->fc_target_port, 
fod->fcpreq);
733                             }
734                     }
735             }
736     
737             /* Cleanup defer'ed IOs in queue */
>>>     CID 1416424:  Memory - illegal accesses  (USE_AFTER_FREE)
>>>     Dereferencing freed pointer "deferfcp".
738             list_for_each_entry(deferfcp, &queue->avail_defer_list, 
req_list) {
739                     list_del(&deferfcp->req_list);
740                     kfree(deferfcp);
741             }
742     
743             for (;;) {

Reply via email to