Messages in this thread | | | Subject | Re: silent semantic changes with reiser4 | From | Bernd Petrovitsch <> | Date | Thu, 26 Aug 2004 13:11:11 +0200 |
| |
[ shortened Cc: of reiser- and other folks since it is no longer reiser-specific - sorry, if it was too much ] [ fixed missing attribution ]
On Thu, 2004-08-26 at 12:51 +0200, Spam wrote: > On Thu, 2004-08-26 at 03:24 -0700, Andrew Morton wrote: > > Spam <spam@tnonline.net> wrote: [...] > >> Applications that support the new features will benefit, all others > >> will continue to work without destroying data. > > > Sorry, but that all sounds a bit fluffy. Please provide some examples.
It is too fluffy.
> We already had the examples with cp and mv. Both should continue to > work and the files will still be copied. The same with Konqueror and
... after they are patched to support streams. As stated each stream has an own fd, so - from the user-space perspective - one has to open *all* streams of this file, read them and write them into the destination.
> Nautilus. Files and their meta-files/streams/attributes will be > retained as long as applications are using the OS API.
The OS-API is *one* file descriptor where you can read, write, mmap, ... on. Therefore stream selection must happen with open() since open() returns a fd (which uniquely identify a stream). Voila. And actually this makes transition actually possible: Old apps simply ignore streams (yes, there will be a default stream, which is used id nothing else is specified) and throw them away (think of e.g. patch which opens a new file, writes into it, unlink's the old one and mv's the new one on the old place) until they are modified to support them.
Bernd -- Firmix Software GmbH http://www.firmix.at/ mobil: +43 664 4416156 fax: +43 1 7890849-55 Embedded Linux Development and Services
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |