"Matwey V. Kornilov" <matwey.kornilov@xxxxxxxxx> writes: > Hello, > > I am looking through some legacy out of tree custom linux kernel device > driver. > > It is full of lines like the following: > > iminor(fp->f_dentry->d_inode) > > here struct file *fp is an argument of callback of struct file_operations. > > Documentation/filesystems/porting says: > > "f_dentry is gone; use f_path.dentry, or, better yet, see if you can > avoid it entirely" > > So, is there a proper compatible way to do the same? Don't know how proper it is, but a "git grep iminor drivers/" shows that minor = iminor(file_inode(file)); is a very common construct. Or alternatively, do the iminor(inode) lookup once in open() to lookup up your device struct or whatever, and then save that reference in file->private_data, thereby avoiding the need to know the minor anywhere else. Bjørn _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies