From: Gerd Knorr Some places which need adaption to the last video-buf API change where forgotten, this patches fixes them up. Hope I really catched them all now. Signed-off-by: Gerd Knorr Signed-off-by: Andrew Morton --- 25-akpm/drivers/media/video/bttv-driver.c | 8 ++++---- 25-akpm/drivers/media/video/cx88/cx88-video.c | 2 +- 25-akpm/drivers/media/video/saa7134/saa7134-video.c | 6 +++--- 3 files changed, 8 insertions(+), 8 deletions(-) diff -puN drivers/media/video/bttv-driver.c~video-buf-oops-crash-fixes drivers/media/video/bttv-driver.c --- 25/drivers/media/video/bttv-driver.c~video-buf-oops-crash-fixes Fri Nov 19 15:23:57 2004 +++ 25-akpm/drivers/media/video/bttv-driver.c Fri Nov 19 15:23:57 2004 @@ -2418,7 +2418,7 @@ static int bttv_do_ioctl(struct inode *i if (0 != retval) goto fh_unlock_and_return; spin_lock_irqsave(&btv->s_lock,flags); - buffer_queue(file->private_data,&buf->vb); + buffer_queue(&fh->cap,&buf->vb); spin_unlock_irqrestore(&btv->s_lock,flags); up(&fh->cap.lock); return 0; @@ -2881,11 +2881,11 @@ static unsigned int bttv_poll(struct fil } fh->cap.read_buf->memory = V4L2_MEMORY_USERPTR; field = videobuf_next_field(&fh->cap); - if (0 != fh->cap.ops->buf_prepare(file->private_data,fh->cap.read_buf,field)) { + if (0 != fh->cap.ops->buf_prepare(&fh->cap,fh->cap.read_buf,field)) { up(&fh->cap.lock); return POLLERR; } - fh->cap.ops->buf_queue(file->private_data,fh->cap.read_buf); + fh->cap.ops->buf_queue(&fh->cap,fh->cap.read_buf); fh->cap.read_off = 0; } up(&fh->cap.lock); @@ -2975,7 +2975,7 @@ static int bttv_release(struct inode *in free_btres(btv,fh,RESOURCE_VIDEO); } if (fh->cap.read_buf) { - buffer_release(file->private_data,fh->cap.read_buf); + buffer_release(&fh->cap,fh->cap.read_buf); kfree(fh->cap.read_buf); } diff -puN drivers/media/video/cx88/cx88-video.c~video-buf-oops-crash-fixes drivers/media/video/cx88/cx88-video.c --- 25/drivers/media/video/cx88/cx88-video.c~video-buf-oops-crash-fixes Fri Nov 19 15:23:57 2004 +++ 25-akpm/drivers/media/video/cx88/cx88-video.c Fri Nov 19 15:23:57 2004 @@ -1070,7 +1070,7 @@ static int video_release(struct inode *i res_free(dev,fh,RESOURCE_VIDEO); } if (fh->vidq.read_buf) { - buffer_release(file->private_data,fh->vidq.read_buf); + buffer_release(&fh->vidq,fh->vidq.read_buf); kfree(fh->vidq.read_buf); } diff -puN drivers/media/video/saa7134/saa7134-video.c~video-buf-oops-crash-fixes drivers/media/video/saa7134/saa7134-video.c --- 25/drivers/media/video/saa7134/saa7134-video.c~video-buf-oops-crash-fixes Fri Nov 19 15:23:57 2004 +++ 25-akpm/drivers/media/video/saa7134/saa7134-video.c Fri Nov 19 15:23:57 2004 @@ -1305,11 +1305,11 @@ video_poll(struct file *file, struct pol up(&fh->cap.lock); return POLLERR; } - if (0 != fh->cap.ops->buf_prepare(file->private_data,fh->cap.read_buf,fh->cap.field)) { + if (0 != fh->cap.ops->buf_prepare(&fh->cap,fh->cap.read_buf,fh->cap.field)) { up(&fh->cap.lock); return POLLERR; } - fh->cap.ops->buf_queue(file->private_data,fh->cap.read_buf); + fh->cap.ops->buf_queue(&fh->cap,fh->cap.read_buf); fh->cap.read_off = 0; } up(&fh->cap.lock); @@ -1346,7 +1346,7 @@ static int video_release(struct inode *i res_free(dev,fh,RESOURCE_VIDEO); } if (fh->cap.read_buf) { - buffer_release(file->private_data,fh->cap.read_buf); + buffer_release(&fh->cap,fh->cap.read_buf); kfree(fh->cap.read_buf); } _