How to get the inode - no path_lookup

Rohan Puri rohan.puri15 at gmail.com
Wed Aug 8 03:16:53 EDT 2012


On Tue, Aug 7, 2012 at 8:11 PM, Rishi Agrawal <rishi.b.agrawal at gmail.com>wrote:

> Hi All,
>
>
> I had a module which used the path_lookup function to print the details of
> any file's inode. I now want to rewrite that module in order to show some
> juniors how to write some code in kernel.
>
> I am using 3.4.6 kernel, I tried finding out path_lookup but google showed
> that it has been removed.
>
> I tried the following code then which did not work
>
> .
> .
> .
> dentry = kern_path_create(AT_FDCWD, filename, &path, 1);
>
> if (IS_ERR(dentry)) {
>               printk("Failed to obtain the dentry");
>                return;
>        }
>
> its not returning dentry
>
> I again tried after seeing the implementation of vfs_stat function
>
> user_path_at(AT_FDCWD, filename, lookup_flags, &path);
>
> but this also fails.
>
>
> I am using a proc interface to pass the filename, and copying the filename
> into a kernel buffer.
>
> How can I get a copy of vfs inode for a file name.
>
>
> Need to use vfs_path_lookup for this, present in fs/namei.c file, which
would give you filled nameidata nd that contais inodes pointer.

> --
> Regards,
> Rishi Agrawal
>
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>
- Rohan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20120808/073a62a7/attachment.html 


More information about the Kernelnewbies mailing list