USB: auerwald: Push down the BKL into the driver

Also fix the unknown ioctl return code

Signed-off-by: Alan Cox <alan@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Alan Cox 2008-05-22 22:46:25 +01:00 committed by Greg Kroah-Hartman
parent 824f16fda5
commit f1b5a7fe17
1 changed files with 6 additions and 4 deletions

View File

@ -1421,7 +1421,8 @@ ofail: mutex_unlock(&cp->mutex);
/* IOCTL functions */
static int auerchar_ioctl (struct inode *inode, struct file *file, unsigned int cmd, unsigned long arg)
static long auerchar_ioctl(struct file *file, unsigned int cmd,
unsigned long arg)
{
pauerchar_t ccp = (pauerchar_t) file->private_data;
int ret = 0;
@ -1452,7 +1453,7 @@ static int auerchar_ioctl (struct inode *inode, struct file *file, unsigned int
mutex_unlock(&ccp->mutex);
return -ENODEV;
}
lock_kernel();
switch (cmd) {
/* return != 0 if Transmitt channel ready to send */
@ -1547,9 +1548,10 @@ static int auerchar_ioctl (struct inode *inode, struct file *file, unsigned int
default:
dbg ("IOCTL_AU_UNKNOWN");
ret = -ENOIOCTLCMD;
ret = -ENOTTY;
break;
}
unlock_kernel();
/* release the mutexes */
mutex_unlock(&cp->mutex);
mutex_unlock(&ccp->mutex);
@ -1860,7 +1862,7 @@ static const struct file_operations auerswald_fops =
.llseek = no_llseek,
.read = auerchar_read,
.write = auerchar_write,
.ioctl = auerchar_ioctl,
.unlocked_ioctl = auerchar_ioctl,
.open = auerchar_open,
.release = auerchar_release,
};