2014-04-15 14:05:21

by Emmanuel Colbus

[permalink] [raw]
Subject: [RFC][9/11][MANUX] Kernel compatibility : ext2's dtime field?

Now, another question. In ext2, what is the point of the dtime field?
Personaly, I'm never setting it, because, well, if an inode is removed,
it's removed, and nobody is supposed to access it again; and anyways,
since no syscall allows seeing it, the dtime seems to me like nothing
but an information leakage. But I doubt you would have put a useless
data in the filesystem, so I'm likely overlooking something; if so, what
is it?


2014-04-15 20:10:34

by Theodore Ts'o

[permalink] [raw]
Subject: Re: [RFC][9/11][MANUX] Kernel compatibility : ext2's dtime field?

On Tue, Apr 15, 2014 at 03:43:12PM +0200, Emmanuel Colbus wrote:
> Now, another question. In ext2, what is the point of the dtime field?
> Personaly, I'm never setting it, because, well, if an inode is removed,
> it's removed, and nobody is supposed to access it again; and anyways,
> since no syscall allows seeing it, the dtime seems to me like nothing
> but an information leakage. But I doubt you would have put a useless
> data in the filesystem, so I'm likely overlooking something; if so, what
> is it?

For ext2, it was useful as a way of being able to do some emergency
undelete operations on a file system. These days, it's mostly for
debugging purposes.

This field is also used as a linked list in ext3 and ext4 for "orphan
inodes" and inodes which are in the process of being truncated or for
which should be truncated after a crash (to avoid leaking stale data,
for example).

- Ted