Re: [dm-devel] linux-next - WARNING: at fs/block_dev.c:824 bd_link_disk_holder+0x92/0x1ac()

Karel Zak
2011-01-14T15:07:53Z

On Thu, Jan 13, 2011 at 05:10:02PM +0100, Kay Sievers wrote:
> On Thu, Jan 13, 2011 at 16:59, Karel Zak <kzak@redhat.com> wrote:
> > On Thu, Jan 13, 2011 at 03:43:38PM +0100, Kay Sievers wrote:
> >> On Thu, Jan 13, 2011 at 15:30, Tejun Heo <tj@kernel.org> wrote:
> >> > On Thu, Jan 13, 2011 at 3:25 PM, Milan Broz <mbroz@redhat.com> wrote:
> >> >> Maybe, but this was not invented in DM/MD camp:-)
> >> >> Probably Kay or Greg can answer why it was done this way?
> >>
> >> It's not from Greg or Kay. It just appeared some day in the context of dm. :)
> >>
> >> And yes, symlinks *look* nice and simple for the outside, but they are
> >> not, and have all sorts of problems like non-atomic updates, make it
> >
> >  Sounds like sysfs implementation problem, right?
>
> It's a normal multi-file problem. It can by-definition not be atomic
> without doing really weird locking things.

BTW, lsblk(8) and libblkid don't depend on the fact that slaves/holders
files are symlinks.

The important thing is the filename (/sys/block/.../slaves/<name>)
only. We don't follow the symlinks and we don't use readlink() there.

It means that you can replace the symlinks with regular files where
in the file contents is for example maj:min, etc.

Karel

--
Karel Zak <kzak@redhat.com>