diff options
Diffstat (limited to 'drivers/ide/ide-disk.c')
-rw-r--r-- | drivers/ide/ide-disk.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/ide/ide-disk.c b/drivers/ide/ide-disk.c index dc2175c81f5e..b1304a7f3e0a 100644 --- a/drivers/ide/ide-disk.c +++ b/drivers/ide/ide-disk.c | |||
@@ -1190,11 +1190,11 @@ static int idedisk_ioctl(struct inode *inode, struct file *file, | |||
1190 | return generic_ide_ioctl(drive, file, bdev, cmd, arg); | 1190 | return generic_ide_ioctl(drive, file, bdev, cmd, arg); |
1191 | 1191 | ||
1192 | read_val: | 1192 | read_val: |
1193 | down(&ide_setting_sem); | 1193 | mutex_lock(&ide_setting_mtx); |
1194 | spin_lock_irqsave(&ide_lock, flags); | 1194 | spin_lock_irqsave(&ide_lock, flags); |
1195 | err = *val; | 1195 | err = *val; |
1196 | spin_unlock_irqrestore(&ide_lock, flags); | 1196 | spin_unlock_irqrestore(&ide_lock, flags); |
1197 | up(&ide_setting_sem); | 1197 | mutex_unlock(&ide_setting_mtx); |
1198 | return err >= 0 ? put_user(err, (long __user *)arg) : err; | 1198 | return err >= 0 ? put_user(err, (long __user *)arg) : err; |
1199 | 1199 | ||
1200 | set_val: | 1200 | set_val: |
@@ -1204,9 +1204,9 @@ set_val: | |||
1204 | if (!capable(CAP_SYS_ADMIN)) | 1204 | if (!capable(CAP_SYS_ADMIN)) |
1205 | err = -EACCES; | 1205 | err = -EACCES; |
1206 | else { | 1206 | else { |
1207 | down(&ide_setting_sem); | 1207 | mutex_lock(&ide_setting_mtx); |
1208 | err = setfunc(drive, arg); | 1208 | err = setfunc(drive, arg); |
1209 | up(&ide_setting_sem); | 1209 | mutex_unlock(&ide_setting_mtx); |
1210 | } | 1210 | } |
1211 | } | 1211 | } |
1212 | return err; | 1212 | return err; |