On Thu, Jul 17, 2014 at 1:22 PM, Jeff Layton <jeff.layton@xxxxxxxxxxxxxxx> wrote: > What's so special about an EOPENSTALE return from finish_open that we > need to handle retries in do_last? It seems like we could get rid of the > stale_open label and just let do_filp_open handle it like we would > an ESTALE return from any other spot in the function. > > Just for giggles, here's an RFC patch. It builds but I haven't tested > it. It might also be possible to do some cleanup around saved_parent > with this. > > Thoughts? EOPENSTALE is an optimization for the redoing only the last component. It's the analogue of ->d_revalidate() failure, in which case lookup of that component only is retried path components before that are not. I'm not sure if it's a valid optimization, but if not, then we should also consider doing LOOKUP_REVAL on the whole path on any d_revalidate() failure as well. Thanks, Miklos -- 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