Linux Kernel readlink equivalent

David Legault legault.david at
Fri Jan 30 11:02:01 EST 2015

On Thu, Jan 29, 2015 at 2:37 PM, Greg KH <greg at> wrote:

> On Thu, Jan 29, 2015 at 01:11:13PM -0500, David Legault wrote:
> > Hello,
> >
> > I'm working on some linux kernel driver stuff and I have a fake path
> called /
> > dev/blah/whatever that points to /dev/block/real_device.
> That's a userspace "path", right?  Why would the kernel care about this?
> > The issue is that lookup_bdev will fail to follow the symlink so I'd
> like to
> > massage the path upfront by getting the real path
> (/dev/block/real_device) so I
> > can hand that off to lookup_bdev so it returns successfully instead of an
> > error.
> Why are you calling this from within the kernel?  You should have a bdev
> already directly within the kernel, no need to muck around in /dev/

The path used is generic in that it never changes, but the pointed block
device underneath changes based on the hardware/configuration in place. So
the idea was to load a module passing the path as a module argument so I
could access the underlying block device through the link without having to
worry about the real block device path.

> What exactly are you doing that you feel you need access to a block
> device node?
> thanks,
> greg k-h
-------------- next part --------------
An HTML attachment was scrubbed...

More information about the Kernelnewbies mailing list