Re: [PATCH for testing] cow behaviour for hard links

From: Jörn Engel
Date: Fri Mar 12 2004 - 13:31:26 EST


This is assuming we keep current design.

On Fri, 12 March 2004 18:48:57 +0100, Sytse Wielinga wrote:
>
> I have made some pretty thorough changes to your patch though. You can find
> the patch attached to this email.
> Things I've changed:
>
> - moved break_cow_link from dentry_open in open.c to get_write_access in
> namei.c. Putting it in dentry_open thoroughly breaks things, as it's too late
> to save files from being truncated, for example.

True, good catch.

> - made something from the mess you made of ext2/ext3 inode flags :-P

Good. Both variants of my mess worked, so I left it for the moment.

> - removed inheritance, as it's not useful in any way, not expected and breaks
> linking of files with S_COWLINK set.

Not useful? Without inheritance, I have to manually add the flag for
every file/directory I add. Each time I forget, writes go to both
files and I notice the mess weeks later. Naa, that's where we're now
and why I created the patch in the first place.

What we do need, though, is a new errno. -EMLINK is close, but still
wrong.

> - made a go at supporting reiserfs, but failed... my changes are in the
> patch, could somebody please have a look and tell me what I've missed?

No clue, don't care. :)

> - fcntl_setcow now spins a spinlock

Not the only lock I missed. Good.


Jörn

--
He who knows that enough is enough will always have enough.
-- Lao Tsu
-
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/