Messages in this thread | | | Date | Fri, 13 Apr 2012 08:09:27 -0400 | From | Jeff Layton <> | Subject | Re: [PATCH RFC] vfs: make fstatat retry on ESTALE errors from getattr call |
| |
On Fri, 13 Apr 2012 08:02:32 -0400 Jim Rees <rees@umich.edu> wrote:
> Jeff Layton wrote: > > +retry: > error = user_path_at(dfd, filename, lookup_flags, &path); > if (error) > goto out; > > error = vfs_getattr(path.mnt, path.dentry, stat); > + should_retry = error == -ESTALE ? retry_estale(path.dentry) : false; > path_put(&path); > + if (should_retry) { > + lookup_flags |= LOOKUP_REVAL; > + goto retry; > + } > out: > return error; > } > > This is starting to look like FORTRAN. Maybe turn this into a "do while"? > Then you could make the "goto out" into a break and get rid of them both.
Sure, that's doable. If we want to do a finite number of retries that may be preferable anyway.
-- Jeff Layton <jlayton@redhat.com>
| |