staging: make new character devices nonseekable
As a preparation for changing the default behaviour of llseek to no_llseek, every file_operations structure should have a .llseek operation. There are three new instances in staging now, which can all be changed into no_llseek explicitly since the devices do not need to seek. Add nonseekable_open where appropriate, to prevent pread/pwrite as well. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
cff55f50b8
commit
d16044cf8c
|
@ -1,3 +1,5 @@
|
|||
#include <linux/fs.h>
|
||||
|
||||
#include "headers.h"
|
||||
/***************************************************************
|
||||
* Function - bcm_char_open()
|
||||
|
@ -35,6 +37,8 @@ static int bcm_char_open(struct inode *inode, struct file * filp)
|
|||
|
||||
/*Start Queuing the control response Packets*/
|
||||
atomic_inc(&Adapter->ApplicationRunning);
|
||||
|
||||
nonseekable_open(inode, filp);
|
||||
return 0;
|
||||
}
|
||||
static int bcm_char_release(struct inode *inode, struct file *filp)
|
||||
|
@ -2360,6 +2364,7 @@ static struct file_operations bcm_fops = {
|
|||
.release = bcm_char_release,
|
||||
.read = bcm_char_read,
|
||||
.unlocked_ioctl = bcm_char_ioctl,
|
||||
.llseek = no_llseek,
|
||||
};
|
||||
|
||||
|
||||
|
|
|
@ -163,6 +163,7 @@ static struct file_operations usbbcm_fops = {
|
|||
.read = usbbcm_read,
|
||||
.write = usbbcm_write,
|
||||
.owner = THIS_MODULE,
|
||||
.llseek = no_llseek,
|
||||
};
|
||||
|
||||
static struct usb_class_driver usbbcm_class = {
|
||||
|
|
|
@ -81,10 +81,11 @@ int numofmsgbuf = 0;
|
|||
//
|
||||
static struct file_operations ft1000fops =
|
||||
{
|
||||
unlocked_ioctl: ft1000_ChIoctl,
|
||||
poll: ft1000_ChPoll,
|
||||
open: ft1000_ChOpen,
|
||||
release: ft1000_ChRelease
|
||||
.unlocked_ioctl = ft1000_ChIoctl,
|
||||
.poll = ft1000_ChPoll,
|
||||
.open = ft1000_ChOpen,
|
||||
.release = ft1000_ChRelease,
|
||||
.llseek = no_llseek,
|
||||
};
|
||||
|
||||
|
||||
|
@ -470,6 +471,7 @@ static int ft1000_ChOpen (struct inode *Inode, struct file *File)
|
|||
|
||||
File->private_data = pdevobj[num]->net;
|
||||
|
||||
nonseekable_open(Inode, File);
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue