diff options
author | Martin Kepplinger <martink@posteo.de> | 2015-03-24 02:21:20 +0100 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2015-03-24 02:22:06 +0100 |
commit | 67c50bf292c1c02ec7ca548049c53cc08dc75ed1 (patch) | |
tree | d3cd468c7f7a2d7a727f983b7b25b652dabd9d60 /drivers/lguest | |
parent | lguest: fix pending interrupt test. (diff) | |
download | linux-67c50bf292c1c02ec7ca548049c53cc08dc75ed1.tar.xz linux-67c50bf292c1c02ec7ca548049c53cc08dc75ed1.zip |
lguest: explicitly set miscdevice's private_data NULL
There is a proposed change to the miscdevice's behaviour on open(). Currently
file->private_data stays NULL, but only because we don't have an open-entry in
struct file_operations.
This may change so that private_data, more consistently, is always set to
struct miscdevice, not only *if* the driver has it's own open() routine and
fops-entry, see https://lkml.org/lkml/2014/12/4/939 and commit
94e4fe2cab3d43b3ba7c3f721743006a8c9d913a
In short: If we rely on file->private_data being NULL, we should ensure
it is NULL ourselves.
Signed-off-by: Martin Kepplinger <martink@posteo.de>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'drivers/lguest')
-rw-r--r-- | drivers/lguest/lguest_user.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/drivers/lguest/lguest_user.c b/drivers/lguest/lguest_user.c index c4c6113eb9a6..30c60687d277 100644 --- a/drivers/lguest/lguest_user.c +++ b/drivers/lguest/lguest_user.c @@ -339,6 +339,13 @@ static ssize_t write(struct file *file, const char __user *in, } } +static int open(struct inode *inode, struct file *file) +{ + file->private_data = NULL; + + return 0; +} + /*L:060 * The final piece of interface code is the close() routine. It reverses * everything done in initialize(). This is usually called because the @@ -409,6 +416,7 @@ static int close(struct inode *inode, struct file *file) */ static const struct file_operations lguest_fops = { .owner = THIS_MODULE, + .open = open, .release = close, .write = write, .read = read, |