return ret;
}
-static int __video1394_ioctl(struct file *file,
- unsigned int cmd, unsigned long arg)
+static long video1394_ioctl(struct file *file,
+ unsigned int cmd, unsigned long arg)
{
struct file_ctx *ctx = (struct file_ctx *)file->private_data;
struct ti_ohci *ohci = ctx->ohci;
}
}
-static long video1394_ioctl(struct file *file, unsigned int cmd, unsigned long arg)
-{
- int err;
- lock_kernel();
- err = __video1394_ioctl(file, cmd, arg);
- unlock_kernel();
- return err;
-}
-
/*
* This maps the vmalloced and reserved buffer to user space.
*
static int video1394_mmap(struct file *file, struct vm_area_struct *vma)
{
struct file_ctx *ctx = (struct file_ctx *)file->private_data;
- int res = -EINVAL;
- lock_kernel();
if (ctx->current_ctx == NULL) {
PRINT(KERN_ERR, ctx->ohci->host->id,
"Current iso context not set");
- } else
- res = dma_region_mmap(&ctx->current_ctx->dma, file, vma);
- unlock_kernel();
+ return -EINVAL;
+ }
- return res;
+ return dma_region_mmap(&ctx->current_ctx->dma, file, vma);
}
static unsigned int video1394_poll(struct file *file, poll_table *pt)
struct dma_iso_ctx *d;
int i;
- lock_kernel();
ctx = file->private_data;
d = ctx->current_ctx;
if (d == NULL) {
PRINT(KERN_ERR, ctx->ohci->host->id,
"Current iso context not set");
- mask = POLLERR;
- goto done;
+ return POLLERR;
}
poll_wait(file, &d->waitq, pt);
}
}
spin_unlock_irqrestore(&d->lock, flags);
-done:
- unlock_kernel();
return mask;
}
struct list_head *lh, *next;
u64 mask;
- lock_kernel();
list_for_each_safe(lh, next, &ctx->context_list) {
struct dma_iso_ctx *d;
d = list_entry(lh, struct dma_iso_ctx, link);
kfree(ctx);
file->private_data = NULL;
- unlock_kernel();
return 0;
}