Hi Christoph, Thanks for reviewing these! On Sat, 2014-04-19 at 07:35 -0700, Christoph Hellwig wrote: > > +/* XXX: for first cut may fall back on returning file that doesn't work > > + * at all? */ > > I think moving this code around might be a good opportunity to remove > this confusing comment. Will do. > > +static struct file *find_writeable_file(struct nfs4_file *f) > > +{ > > + struct file *ret; > > + > > + spin_lock(&f->fi_lock); > > + ret = __nfs4_get_fd(f, O_WRONLY); > > + if (!ret) > > + ret = __nfs4_get_fd(f, O_RDWR); > > + spin_unlock(&f->fi_lock); > > + return ret; > > +} > > + > > +static struct file *find_readable_file(struct nfs4_file *f) > > +{ > > + struct file *ret; > > + > > + spin_lock(&f->fi_lock); > > + ret = __nfs4_get_fd(f, O_RDONLY); > > + if (!ret) > > + ret = __nfs4_get_fd(f, O_RDWR); > > + spin_unlock(&f->fi_lock); > > + return ret; > > Seems like these two functions could be easily consolidated by passing > a single flags argument. Yes, but we'd have to invent a new set of flags for just this function and so I'm not sure that the end result would be more readable. We can't reuse O_RDONLY/O_WRONLY/O_RDWR since they can't be bitwise ORed to produce the 'read or read/write', 'write or read/write' combinations that we need. Cheers Trond -- Trond Myklebust Linux NFS client maintainer, PrimaryData trond.myklebust@xxxxxxxxxxxxxxx -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html