Re: Strange NOTAIL inheritance behaviour in Reiserfs 3.6

From: Oleg Drokin
Date: Thu Jun 24 2004 - 11:01:18 EST


Hello!

On Thu, Jun 24, 2004 at 04:27:44PM +0200, Michael Kerrisk wrote:
> >
> > MK> # mount -t reiserfs /dev/hda12 /testfs
> > Does it work as expected if you add "-o attrs" to the mount command?
> Yes! Thanks. However, it is a little unfortunate that if one fails
> to use this option, then:
> 1. "chattr +t" (and I suppose underlying ioctl()s) can still be used to
> set this attribute on a directory, without any error resulting.
> It would be better if an error is reported.

Well, initial idea was to allow people to at least reset attributes
in case of operationg with disabled attributes processing.

> 2. The attribute is then inherited by files created in that directory,
> but has no effect.

Yes, attribute inheritance is working. The only part that is disabled
by default is copying from fs-specific attribute storage to actual VFS inode
attributes.

> 3. A later explicit "chattr + t" on the files themselves DOES result in
> unpacking of the tails. Why?

There is a check in attributes setting code (and attributes setting/cleaning
is enabled), that tests if NOTAIL attribute is set, that calls tails
unpacking if so. Next time you write to that file it will be packed back
(if possible).

I agree that all of this is not very intuitive, though.

Bye,
Oleg
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/