On Tue, May 22, 2007 at 08:25:16AM +0200, Jan Engelhardt wrote: > > On May 22 2007 08:43, Bharata B Rao wrote: > >On Fri, May 18, 2007 at 09:47:31AM -0400, Shaya Potter wrote: > >> Bharata B Rao wrote: > >> > >> > > >> >Not really. This is called during copyup of a file residing in a lower > >> >layer. And that is done only for regular files. > >> > >> That is broken. > > > >But it only breaks the semantics (in other cases we allow writes only to the > >top layer files). So the question is why do we have to copy up the device > >node ? What difference it makes to writing to the device itself ? > > Because `chmod 666 blockdevnode` is not the same as writing > to the device itself? What if that chmod is applied on the lower level device node ? This is what we do currently, even for regular files. Copyup happens only when the file is opened for writing. Let me rephrase my earlier question: In case of regular files, when we copyup a file, we are actually preventing any writes to the lower layers (which we have designated as read only). Applying the same logic to devices, what do we achieve by copying them up ? How does it matter if we write to the device through a node in the upper layer or in the lower layer. Both the writes eventually do the same thing. What I am trying to understand is, if the need for copyup is purely a matter of conforming to semantics (of not allowing writes to the lower layers in case of union mount) or do we achieve anything else by doing a device copyup ? Are there any cases where copying up of device nodes are absolutely essential for sane behaviour ? Regards, Bharata. - To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html