Re: [PATCH 1/2] f2fs: add sysfs symbolic link to kobject with volume name

From: Greg KH
Date: Wed Jul 22 2020 - 15:10:26 EST


On Wed, Jul 22, 2020 at 10:24:37AM -0700, Jaegeuk Kim wrote:
> On 07/22, Greg KH wrote:
> > On Wed, Jul 22, 2020 at 09:43:56AM -0700, Jaegeuk Kim wrote:
> > > On 07/19, Greg KH wrote:
> > > > On Sun, Jul 19, 2020 at 02:44:08PM +0900, Daeho Jeong wrote:
> > > > > From: Daeho Jeong <daehojeong@xxxxxxxxxx>
> > > > >
> > > > > Added a symbolic link directory pointing to its device name
> > > > > directory using the volume name of the partition in sysfs.
> > > > > (i.e., /sys/fs/f2fs/vol_#x -> /sys/fs/f2fs/sda1)
> > > >
> > > > No, please no.
> > > >
> > > > That is already created today for you in /dev/disk/ The kernel does not
> > > > need to do this again.
> > > >
> > > > If your distro/system/whatever does not provide you with /dev/disk/ and
> > > > all of the symlinks in there, then work with your distro/system/whatever
> > > > to do so.
> > >
> > > I don't get the point, since /dev/disk points device node, not any sysfs entry.
> > > Do you mean we need to create symlink to /sys/fs/f2fs/dm-X in /dev/disk?
> >
> > Huh, no! It's all done for you today automagically by userspace:
> >
> > $ tree /dev/disk/by-label/
> > /dev/disk/by-label/
> > âââ boot -> ../../sda1
> > âââ fast_disk -> ../../md0
> > âââ root -> ../../sda2
> > âââ stuff -> ../../dm-0
> >
> > Look on your laptop/desktop/server today for those, there's lots of
> > symlinks in /dev/disk/
>
> What I mean is "creating symlink from *userspace*", but the concern is
> "/dev/" looks like being used for device nodes only, not sysfs.

That is correct, that is what /dev/ is for, not sysfs.

> > > > Again, no need to do this on a per-filesystem-basis when we already have
> > > > this around for all filesystems, and have had it for 15+ years now.
> > >
> > > Could you point out where we can get this? And, the label support depends
> > > on per-filesystem design. I'm not sure how this can be generic enough.
> >
> > Userspace knows how to read labels on a per-filesystem-basis and does so
> > just fine. That's how it creates those symlinks, no kernel support is
> > needed.
> >
> > This has been implemented for 15+ years now, it's not a new thing...
> >
> > Now if your embedded system doesn't support it, that's the userspace of
> > that system's fault, it's not the kernel's fault at all. Go fix your
> > userspace if you want those things.
>
> I'm not talking about whose fault tho. :) By any chance, could you please
> suggest a good location to create a symlink for this sysfs entry?

There is no need for such a sysfs entry, that's what I am trying to say.
Userspace already has all of the needed information here, do not try to
add filesystem-specific stuff like this, unless you somehow are going to
do it for all filesystems :)

thanks,

gregt k-h