X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fchar%2Ftb0219.c;h=6062b62800fd2d97e01a640fedaf655983b6997d;hb=7f268a2ba7c884a239713696238dd4207a57dd9a;hp=bb1bad4c18f9e5718e56d014ecff7ebbe235c1fe;hpb=e82ca04387dd6c98722f5f48235089839fd04268;p=linux-2.6 diff --git a/drivers/char/tb0219.c b/drivers/char/tb0219.c index bb1bad4c18..6062b62800 100644 --- a/drivers/char/tb0219.c +++ b/drivers/char/tb0219.c @@ -21,6 +21,7 @@ #include #include #include +#include #include #include @@ -164,7 +165,7 @@ static ssize_t tanbac_tb0219_read(struct file *file, char __user *buf, size_t le unsigned int minor; char value; - minor = iminor(file->f_dentry->d_inode); + minor = iminor(file->f_path.dentry->d_inode); switch (minor) { case 0: value = get_led(); @@ -200,7 +201,7 @@ static ssize_t tanbac_tb0219_write(struct file *file, const char __user *data, int retval = 0; char c; - minor = iminor(file->f_dentry->d_inode); + minor = iminor(file->f_path.dentry->d_inode); switch (minor) { case 0: type = TYPE_LED; @@ -236,6 +237,7 @@ static int tanbac_tb0219_open(struct inode *inode, struct file *file) { unsigned int minor; + cycle_kernel_lock(); minor = iminor(inode); switch (minor) { case 0: