All of lore.kernel.org
 help / color / mirror / Atom feed
* [RFC][6/11][MANUX] Kernel compatibility : directory hardlinks
@ 2014-04-15 13:43 Emmanuel Colbus
  2014-04-15 20:06 ` Theodore Ts'o
  0 siblings, 1 reply; 7+ messages in thread
From: Emmanuel Colbus @ 2014-04-15 13:43 UTC (permalink / raw)
  To: linux-kernel

Now for something that has to do both with syscalls and filesystems...

My operating system relies heavily upon hardlinks, and, amongst others,
directory hardlinks. (Yes, that's what my ext2l partitions are for. Not
only, but this is part of it).

To allow distinguishing them from true directories, I've introduced a
value S_IFDHL equal to 0130000, both for the file mode in stat(2) and
for the type_entry field in the dirent structure, in getdents64(2).
(However, it's not visible to normal applications, because seeing this
value in getdents() requires asking for it with a new syscall and having
the privileges to do so, while seeing the value in stat(2) is impossible
for them because their call gets routed towards the target directory -
my directory hardlinks are implemented somewhat like symlinks, but with
inode numbers. Thus, the userspace requires no modifications).

Is this value acceptable? And, if it is, could you mark it as reserved
(or otherwise avoid reusing it), so that there's no collision with it in
the future?

Thank you,

Emmanuel

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2014-04-16  2:14 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-04-15 13:43 [RFC][6/11][MANUX] Kernel compatibility : directory hardlinks Emmanuel Colbus
2014-04-15 20:06 ` Theodore Ts'o
2014-04-15 20:53   ` Emmanuel Colbus
2014-04-15 22:01     ` Theodore Ts'o
2014-04-15 23:12       ` Emmanuel Colbus
2014-04-15 23:34         ` Theodore Ts'o
2014-04-16  2:14           ` Emmanuel Colbus

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.