summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGregory Nutt <gnutt@nuttx.org>2013-11-02 08:10:24 -0600
committerGregory Nutt <gnutt@nuttx.org>2013-11-02 08:10:24 -0600
commitd6ef97488677571c5584068ff98563094bfb2efc (patch)
treeae478199ad44547fa9cc45f97cacc7a48f7f457a
parentfbd724d2410ef8fe27d4fefd5a637ce6985ea330 (diff)
downloadnuttx-d6ef97488677571c5584068ff98563094bfb2efc.tar.gz
nuttx-d6ef97488677571c5584068ff98563094bfb2efc.tar.bz2
nuttx-d6ef97488677571c5584068ff98563094bfb2efc.zip
Need to lock mutex before signal
-rw-r--r--nuttx/drivers/usbdev/usbmsc_scsi.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/nuttx/drivers/usbdev/usbmsc_scsi.c b/nuttx/drivers/usbdev/usbmsc_scsi.c
index 199b11af1..06f1d8bb8 100644
--- a/nuttx/drivers/usbdev/usbmsc_scsi.c
+++ b/nuttx/drivers/usbdev/usbmsc_scsi.c
@@ -2678,6 +2678,8 @@ void *usbmsc_workerthread(void *arg)
/* Transition to the TERMINATED state and exit */
priv->thstate = USBMSC_STATE_TERMINATED;
- pthread_cond_signal(&priv->cond); /* REVISIT: See comments in usbmsc_uninitialize() */
+ pthread_mutex_lock(&priv->mutex); /* REVISIT: See comments in usbmsc_uninitialize() */
+ pthread_cond_signal(&priv->cond);
+ pthread_mutex_unlock(&priv->mutex);
return NULL;
}