On 05/21/2014 03:30 PM, Bart Van Assche wrote:
scmd-abort_work is only scheduled after the block layer has marked
the request associated with a command as complete and for commands
that are not on the eh_cmd_q list. A SCSI command is only requeued
after the scmd-abort_work handler has started
Il 23/05/2014 08:09, Hannes Reinecke ha scritto:
And when freeing a command we absolutely need to make sure that
the workqueue is empty.
So calling cancel_delayed_work() was the obvious thing to do.
You would need cancel_delayed_work_sync, but if it really happened that
the work item is
On 05/23/14 11:24, Paolo Bonzini wrote:
Il 23/05/2014 08:09, Hannes Reinecke ha scritto:
And when freeing a command we absolutely need to make sure that
the workqueue is empty.
So calling cancel_delayed_work() was the obvious thing to do.
You would need cancel_delayed_work_sync, but if it
Il 23/05/2014 12:37, Bart Van Assche ha scritto:
On 05/23/14 11:24, Paolo Bonzini wrote:
Il 23/05/2014 08:09, Hannes Reinecke ha scritto:
And when freeing a command we absolutely need to make sure that
the workqueue is empty.
So calling cancel_delayed_work() was the obvious thing to do.
You
Il 21/05/2014 15:30, Bart Van Assche ha scritto:
+static bool scmd_being_handled_in_other_context(struct scsi_cmnd *scmd)
+{
+ struct Scsi_Host *shost = scmd-device-host;
+ struct scsi_cmnd *c;
+ unsigned long flags;
+ bool ret = false;
+
+ if
On 05/22/14 18:22, Paolo Bonzini wrote:
Il 21/05/2014 15:30, Bart Van Assche ha scritto:
+static bool scmd_being_handled_in_other_context(struct scsi_cmnd *scmd)
+{
+struct Scsi_Host *shost = scmd-device-host;
+struct scsi_cmnd *c;
+unsigned long flags;
+bool ret = false;
+
scmd-abort_work is only scheduled after the block layer has marked
the request associated with a command as complete and for commands
that are not on the eh_cmd_q list. A SCSI command is only requeued
after the scmd-abort_work handler has started (requeueing clears
the complete flag). This means
7 matches
Mail list logo