On 0, Madhu Iyengar <madhu.iyengar@xxxxxxxxxx> wrote: > We at QLogic are fine with James's fix. Here's my ack: > > Acked-by: Madhuranath Iyengar <Madhu.Iyengar@xxxxxxxxxx> > > Cheers, > Madhu James, You are gonna take care of this or do you want me to send a new patch ? I am fine either ways. > -----Original Message----- > From: linux-scsi-owner@xxxxxxxxxxxxxxx [mailto:linux-scsi-owner@xxxxxxxxxxxxxxx] On Behalf Of Bandan Das > Sent: Thursday, January 27, 2011 1:33 PM > To: James Bottomley > Cc: Andrew Vasquez; linux-scsi@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH] qla2xxx: Fix possible race that could hang kthread_stop() > > > > That's not really the accepted way to fix these race conditions because > > of the double check of kthread_should_stop(); this is > > James > > > > --- > > diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c > > index c194c23..15ce69e 100644 > > --- a/drivers/scsi/qla2xxx/qla_os.c > > +++ b/drivers/scsi/qla2xxx/qla_os.c > > @@ -3282,10 +3282,10 @@ qla2x00_do_dpc(void *data) > > > > set_user_nice(current, -20); > > > > + set_current_state(TASK_INTERRUPTIBLE); > > while (!kthread_should_stop()) { > > DEBUG3(printk("qla2x00: DPC handler sleeping\n")); > > > > - set_current_state(TASK_INTERRUPTIBLE); > > schedule(); > > __set_current_state(TASK_RUNNING); > > > > @@ -3454,7 +3454,9 @@ qla2x00_do_dpc(void *data) > > qla2x00_do_dpc_all_vps(base_vha); > > > > ha->dpc_active = 0; > > + set_current_state(TASK_INTERRUPTIBLE); > > } /* End of while(1) */ > > + __set_current_state(TASK_RUNNING); > > > > DEBUG(printk("scsi(%ld): DPC handler exiting\n", base_vha->host_no)); > > > Yes, this looks more clean and will take care of the problem I am hitting. > > > Bandan > -- > To unsubscribe from this list: send the line "unsubscribe linux-scsi" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html > > > This message and any attached documents contain information from QLogic Corporation or its wholly-owned subsidiaries that may be confidential. If you are not the intended recipient, you may not read, copy, distribute, or use this information. If you have received this transmission in error, please notify the sender immediately by reply e-mail and then delete this message. -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html