[parisc-linux] Re: [fuse-devel] Example filesystem fail to init on parisc

Hugh Dickins hugh at veritas.com
Sun Mar 19 08:38:04 MST 2006


On Sun, 19 Mar 2006, James Bottomley wrote:
> 
> Well, yes, I think fuse is guilty to some degree.  However, the same
> situation would prevail if anonymous memory were sent down to our other
> kernel<->user mapping routines, like SG_IO for instance.  Perhaps we
> should be doing early cow breaking for anonymous pages we know we're
> going to write to?

Certainly, that is part of what copy_to_user and get_user_pages(,,,,1,,,)
(and ordinary userspace writing) guarantee.  So if there's some new route
by which userspace pages may be modified on behalf of the user, never mind
the architecture-specific cache coherency issues, COWs must be broken to
preserve the semantics of fork.

drivers/scsi/sg.c looks like it makes all the necessary calls to
__copy_to_user or get_user_pages... but it's not hard to fool me.

Hugh



More information about the parisc-linux mailing list