diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-22 13:49:54 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-10-22 13:49:54 -0400 |
| commit | c37927d4359e81b85de644f8fb08878717cf5f3f (patch) | |
| tree | 25dabf2d905e1410819d1bdaba0bf5f779100d3c /drivers/ide/ide-disk_ioctl.c | |
| parent | 5704e44d283e907623e3775c1262f206a2c48cf3 (diff) | |
| parent | 2a48fc0ab24241755dc93bfd4f01d68efab47f5a (diff) | |
Merge branch 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl
* 'trivial' of git://git.kernel.org/pub/scm/linux/kernel/git/arnd/bkl:
block: autoconvert trivial BKL users to private mutex
drivers: autoconvert trivial BKL users to private mutex
ipmi: autoconvert trivial BKL users to private mutex
mac: autoconvert trivial BKL users to private mutex
mtd: autoconvert trivial BKL users to private mutex
scsi: autoconvert trivial BKL users to private mutex
Fix up trivial conflicts (due to addition of private mutex right next to
deletion of a version string) in drivers/char/pcmcia/cm40[04]0_cs.c
Diffstat (limited to 'drivers/ide/ide-disk_ioctl.c')
| -rw-r--r-- | drivers/ide/ide-disk_ioctl.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/ide/ide-disk_ioctl.c b/drivers/ide/ide-disk_ioctl.c index ec94c66918f6..da36f729ff32 100644 --- a/drivers/ide/ide-disk_ioctl.c +++ b/drivers/ide/ide-disk_ioctl.c | |||
| @@ -1,10 +1,11 @@ | |||
| 1 | #include <linux/kernel.h> | 1 | #include <linux/kernel.h> |
| 2 | #include <linux/ide.h> | 2 | #include <linux/ide.h> |
| 3 | #include <linux/hdreg.h> | 3 | #include <linux/hdreg.h> |
| 4 | #include <linux/smp_lock.h> | 4 | #include <linux/mutex.h> |
| 5 | 5 | ||
| 6 | #include "ide-disk.h" | 6 | #include "ide-disk.h" |
| 7 | 7 | ||
| 8 | static DEFINE_MUTEX(ide_disk_ioctl_mutex); | ||
| 8 | static const struct ide_ioctl_devset ide_disk_ioctl_settings[] = { | 9 | static const struct ide_ioctl_devset ide_disk_ioctl_settings[] = { |
| 9 | { HDIO_GET_ADDRESS, HDIO_SET_ADDRESS, &ide_devset_address }, | 10 | { HDIO_GET_ADDRESS, HDIO_SET_ADDRESS, &ide_devset_address }, |
| 10 | { HDIO_GET_MULTCOUNT, HDIO_SET_MULTCOUNT, &ide_devset_multcount }, | 11 | { HDIO_GET_MULTCOUNT, HDIO_SET_MULTCOUNT, &ide_devset_multcount }, |
| @@ -19,13 +20,13 @@ int ide_disk_ioctl(ide_drive_t *drive, struct block_device *bdev, fmode_t mode, | |||
| 19 | { | 20 | { |
| 20 | int err; | 21 | int err; |
| 21 | 22 | ||
| 22 | lock_kernel(); | 23 | mutex_lock(&ide_disk_ioctl_mutex); |
| 23 | err = ide_setting_ioctl(drive, bdev, cmd, arg, ide_disk_ioctl_settings); | 24 | err = ide_setting_ioctl(drive, bdev, cmd, arg, ide_disk_ioctl_settings); |
| 24 | if (err != -EOPNOTSUPP) | 25 | if (err != -EOPNOTSUPP) |
| 25 | goto out; | 26 | goto out; |
| 26 | 27 | ||
| 27 | err = generic_ide_ioctl(drive, bdev, cmd, arg); | 28 | err = generic_ide_ioctl(drive, bdev, cmd, arg); |
| 28 | out: | 29 | out: |
| 29 | unlock_kernel(); | 30 | mutex_unlock(&ide_disk_ioctl_mutex); |
| 30 | return err; | 31 | return err; |
| 31 | } | 32 | } |
