On Thu, Jul 18, 2013 at 02:57:11PM -0600, Andreas Dilger wrote: > > _THAT_ was going to be a remotely supplied data? I really hope I've > > misparsed what you said above... > > > > And that still leaves the question about the code path that could > > lead to execution of mgc_fs_setup(). > > The KEY_SET_FS is only used in the server code, not on the client. > The MGC code is shared between client and server to mount the > filesystem and fetch the cluster configuration from the management > server. In the case of a server mount, it also has to mount the > underlying block device, which isn't true on the client, so this > code is indeed unused. Wait a minute... So we have client side of things in staging, with parts shared with the server, which is *not* in tree at all? That sounds painful - any changes done to the client code either risk to break the server, or have the copies of the shared stuff diverge... I honestly have no idea about your plans wrt merging; are you going to put the server side of things there as well? Another thing: is your ll_statfs_internal() safe to call right up to the moment when client_common_put_super calls lprocfs_unregister_mountpoint? Because procfs IO *can* come right until the procfs entry removal; said removal will act as a barrier, so it won't leak past the return from remove_proc_entry(), but that's it. While we are at procfs side of thing, looks like you need exclusion between ll_..._seq_write() that clear/set bits in ->ll_flags; at least I haven't found anything that would prevent the races among those. -- 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