On Mon, Jan 28, 2008 at 09:19:10PM -0500, bfields wrote:
> On Fri, Jan 25, 2008 at 12:15:05AM -0500, Wendy Cheng wrote:
> > +static ssize_t failover_resume_ip(struct file *file, char *buf, size_t 
> > size)
> > +{
> > +   __be32 server_ip;
> > +   int len;
> > +
> > +   len = failover_parse_ip(file, buf, size, &server_ip);
> > +   if (len < 0)
> > +           return len;
> > +
> > +   return nlmsvc_failover_setgrace(&server_ip, len);
> 
> Does this really need to take a void *?  And the &server_ip makes it
> look like server_ip may be modified, which is slightly confusing.
> 
> Maybe the next patches will remind me why it's being done this way....

After another look--no, I'm assuming this is just left over from
previous versions that allowed per-path grace-period setting as well?
So we should just pass some kind of integer instead of a void *.

--b.

> 
> > +}
> > +
> >  static ssize_t failover_unlock_fs(struct file *file, char *buf, size_t 
> > size)
> >  {
> >     struct nameidata nd;
> > @@ -711,6 +742,8 @@ static int nfsd_fill_super(struct super_
> >                                     &transaction_ops, S_IWUSR|S_IRUSR},
> >             [NFSD_FO_UnlockFS] = {"unlock_filesystem",
> >                                     &transaction_ops, S_IWUSR|S_IRUSR},
> > +           [NFSD_FO_ResumeIP] = {"resume_ip",
> > +                                   &transaction_ops, S_IWUSR|S_IRUSR},
> >             [NFSD_Fh] = {"filehandle", &transaction_ops, S_IWUSR|S_IRUSR},
> >             [NFSD_Threads] = {"threads", &transaction_ops, S_IWUSR|S_IRUSR},
> >             [NFSD_Pool_Threads] = {"pool_threads", &transaction_ops, 
> > S_IWUSR|S_IRUSR},
> > --- linux-1/fs/lockd/svcsubs.c      2008-01-22 10:36:24.000000000 -0500
> > +++ linux-2/fs/lockd/svcsubs.c      2008-01-22 11:45:44.000000000 -0500
> > @@ -422,3 +422,12 @@ nlmsvc_failover_ip(__be32 server_addr)
> >                     nlmsvc_failover_file_ok_ip);
> >  }
> >  EXPORT_SYMBOL_GPL(nlmsvc_failover_ip);
> > +
> > +int
> > +nlmsvc_failover_setgrace(void *server_ip, int ip_size)
> > +{
> > +   /* implemented by resume_002.patch */
> > +   return ENOSYS;
> 
> OK, terrifically trivial nit, but: that should be -ENOSYS?
> 
> --b.
> 
> > +}
> > +EXPORT_SYMBOL_GPL(nlmsvc_failover_setgrace);
> > +
> > --- linux-1/include/linux/lockd/lockd.h     2008-01-22 10:36:24.000000000 
> > -0500
> > +++ linux-2/include/linux/lockd/lockd.h     2008-01-22 11:45:44.000000000 
> > -0500
> > @@ -220,6 +220,7 @@ void              nlmsvc_invalidate_all(void);
> >   */
> >  int           nlmsvc_failover_path(struct nameidata *nd);
> >  int           nlmsvc_failover_ip(__be32 server_addr);
> > +int           nlmsvc_failover_setgrace(void *server_ip, int ip_size);
> >  
> >  static __inline__ struct inode *
> >  nlmsvc_file_inode(struct nlm_file *file)
> 

Reply via email to