Re: [dm-devel] linux-next - WARNING: at fs/block_dev.c:824 bd_link_disk_holder+0x92/0x1ac()
From: Kay Sievers <hidden>
Date: 2011-01-14 15:24:23
Also in:
dm-devel, linux-fsdevel, lkml
On Fri, Jan 14, 2011 at 16:07, Karel Zak [off-list ref] wrote:
On Thu, Jan 13, 2011 at 05:10:02PM +0100, Kay Sievers wrote:quoted
On Thu, Jan 13, 2011 at 16:59, Karel Zak [off-list ref] wrote:quoted
On Thu, Jan 13, 2011 at 03:43:38PM +0100, Kay Sievers wrote:quoted
On Thu, Jan 13, 2011 at 15:30, Tejun Heo [off-list ref] wrote:quoted
On Thu, Jan 13, 2011 at 3:25 PM, Milan Broz [off-list ref] wrote:quoted
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 itSounds 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.
I don't think we really can change anything here, there are more users of it. If we would go changing things here, the file names should never be the device name but the format "b8:32" for blockdevs, "n22" for the network ifindex, ... which is the unchangeable unique kernel id -- not depending on any possible device rename, or fast destroy/re-create or anything like that. Kay -- To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html