correction: I mixed stuff together in the previous summary. If we're committing a final state of an inode (pNFS LAYOUTCOMMIT), it's done from the MDS, which does hold caps. The prototype DS doesn't currently handle the sync case using the bypass i/o path. But the prototype up to now has only used that path for unstable DS writes. If the DS uses the bypass data path, it holds no caps (currently; we might want to change that, perhaps optionally, to get fencing). To get the spec behavior for stable DS writes, the DS instead does an ordinary ll_write--this deals with metadata correctly but it's not what we want. To compose the bypass data path with stability, the DS gains the obligation to update inode state itself. Looking at whether the DS could do this using Ceph protocol, is what led me to start the conversation. Thanks, Matt ----- "Matt W. Benjamin" <matt@xxxxxxxxxxxx> wrote: > b) on a given DS, we currently get CEPH_CAP_FILE_WR|CEPH_CAP_FILE_RD > caps when asked to perform i/o on behalf of a valid layout--but we > need to update metadata (size, mtime) and my question in IRC was cross > checking these capabilities as correct to send an update message -- Matt Benjamin The Linux Box 206 South Fifth Ave. Suite 150 Ann Arbor, MI 48104 http://linuxbox.com tel. 734-761-4689 fax. 734-769-8938 cel. 734-216-5309 -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html