cdrom: protect cdrom_device_info list by mutex
This patch protects the list of cdrom_device_info by cdrom_mutex when the file in /proc/sys/dev/cdrom/ is written. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
This commit is contained in:
@@ -3427,6 +3427,7 @@ static void cdrom_update_settings(void)
|
|||||||
{
|
{
|
||||||
struct cdrom_device_info *cdi;
|
struct cdrom_device_info *cdi;
|
||||||
|
|
||||||
|
mutex_lock(&cdrom_mutex);
|
||||||
for (cdi = topCdromPtr; cdi != NULL; cdi = cdi->next) {
|
for (cdi = topCdromPtr; cdi != NULL; cdi = cdi->next) {
|
||||||
if (autoclose && CDROM_CAN(CDC_CLOSE_TRAY))
|
if (autoclose && CDROM_CAN(CDC_CLOSE_TRAY))
|
||||||
cdi->options |= CDO_AUTO_CLOSE;
|
cdi->options |= CDO_AUTO_CLOSE;
|
||||||
@@ -3445,6 +3446,7 @@ static void cdrom_update_settings(void)
|
|||||||
else
|
else
|
||||||
cdi->options &= ~CDO_CHECK_TYPE;
|
cdi->options &= ~CDO_CHECK_TYPE;
|
||||||
}
|
}
|
||||||
|
mutex_unlock(&cdrom_mutex);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int cdrom_sysctl_handler(ctl_table *ctl, int write, struct file * filp,
|
static int cdrom_sysctl_handler(ctl_table *ctl, int write, struct file * filp,
|
||||||
|
Reference in New Issue
Block a user