Andrea Arcangeli wrote:
> I really don't think it make sense to let write(2) to be SMP parallel as
> it would be unreliable and thus useless. So basically allowing more writes
> to enter the critical section looks an useless improvement and lose of
> robustness to me.

a) we must allow concurrent write operations for pipes (O_NONBLOCK).

b) are you sure that these statements are true for a large database?

I think the right aproach would be new functions [public, because needed
by nfsd and arch/*/kernel/sys*.c]

        int inode_lock_write(inode, filp, offset, len);
        ...
        int inode_lock_rename(inode_source,inode_dest);
        ...

and flags so that the f_ops implementation can choose the amount of
synchronization it needs.

Or you could add new function pointers to f_ops/i_ops for
synchronization.

--
        Manfred

Reply via email to