diff options
-rw-r--r-- | sound/core/info.c | 33 |
1 files changed, 11 insertions, 22 deletions
diff --git a/sound/core/info.c b/sound/core/info.c index ae8853921464..af123e3bdb24 100644 --- a/sound/core/info.c +++ b/sound/core/info.c | |||
@@ -444,8 +444,8 @@ static unsigned int snd_info_entry_poll(struct file *file, poll_table * wait) | |||
444 | return mask; | 444 | return mask; |
445 | } | 445 | } |
446 | 446 | ||
447 | static inline int _snd_info_entry_ioctl(struct inode *inode, struct file *file, | 447 | static long snd_info_entry_ioctl(struct file *file, unsigned int cmd, |
448 | unsigned int cmd, unsigned long arg) | 448 | unsigned long arg) |
449 | { | 449 | { |
450 | struct snd_info_private_data *data; | 450 | struct snd_info_private_data *data; |
451 | struct snd_info_entry *entry; | 451 | struct snd_info_entry *entry; |
@@ -465,17 +465,6 @@ static inline int _snd_info_entry_ioctl(struct inode *inode, struct file *file, | |||
465 | return -ENOTTY; | 465 | return -ENOTTY; |
466 | } | 466 | } |
467 | 467 | ||
468 | /* FIXME: need to unlock BKL to allow preemption */ | ||
469 | static int snd_info_entry_ioctl(struct inode *inode, struct file *file, | ||
470 | unsigned int cmd, unsigned long arg) | ||
471 | { | ||
472 | int err; | ||
473 | unlock_kernel(); | ||
474 | err = _snd_info_entry_ioctl(inode, file, cmd, arg); | ||
475 | lock_kernel(); | ||
476 | return err; | ||
477 | } | ||
478 | |||
479 | static int snd_info_entry_mmap(struct file *file, struct vm_area_struct *vma) | 468 | static int snd_info_entry_mmap(struct file *file, struct vm_area_struct *vma) |
480 | { | 469 | { |
481 | struct inode *inode = file->f_dentry->d_inode; | 470 | struct inode *inode = file->f_dentry->d_inode; |
@@ -499,15 +488,15 @@ static int snd_info_entry_mmap(struct file *file, struct vm_area_struct *vma) | |||
499 | 488 | ||
500 | static struct file_operations snd_info_entry_operations = | 489 | static struct file_operations snd_info_entry_operations = |
501 | { | 490 | { |
502 | .owner = THIS_MODULE, | 491 | .owner = THIS_MODULE, |
503 | .llseek = snd_info_entry_llseek, | 492 | .llseek = snd_info_entry_llseek, |
504 | .read = snd_info_entry_read, | 493 | .read = snd_info_entry_read, |
505 | .write = snd_info_entry_write, | 494 | .write = snd_info_entry_write, |
506 | .poll = snd_info_entry_poll, | 495 | .poll = snd_info_entry_poll, |
507 | .ioctl = snd_info_entry_ioctl, | 496 | .unlocked_ioctl = snd_info_entry_ioctl, |
508 | .mmap = snd_info_entry_mmap, | 497 | .mmap = snd_info_entry_mmap, |
509 | .open = snd_info_entry_open, | 498 | .open = snd_info_entry_open, |
510 | .release = snd_info_entry_release, | 499 | .release = snd_info_entry_release, |
511 | }; | 500 | }; |
512 | 501 | ||
513 | /** | 502 | /** |