lkml.org 
[lkml]   [2010]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH 1/1] drivers: misc: pass miscdevice pointer via file private data
Date
For misc devices, inode->i_cdev doesn't point to the device drivers own data.
Link between file operations and device driver internal data is lost.
Pass pointer to misc device struct via file private data for driver open
function use.

Signed-off-by: Samu Onkalo <samu.p.onkalo@nokia.com>
---
drivers/char/misc.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/char/misc.c b/drivers/char/misc.c
index 92ab03d..cd650ca 100644
--- a/drivers/char/misc.c
+++ b/drivers/char/misc.c
@@ -144,6 +144,7 @@ static int misc_open(struct inode * inode, struct file * file)
old_fops = file->f_op;
file->f_op = new_fops;
if (file->f_op->open) {
+ file->private_data = c;
err=file->f_op->open(inode,file);
if (err) {
fops_put(file->f_op);
--
1.6.0.4


\
 
 \ /
  Last update: 2010-05-03 07:35    [W:0.064 / U:0.072 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site