Skip to content
Snippets Groups Projects
  • Yury Umanets's avatar
    54028ab8
    - more fixes and comments about intent managing in ll_revalidate_it(). In few... · 54028ab8
    Yury Umanets authored
    - more fixes and comments about intent managing in ll_revalidate_it(). In few words, in the cases dentry is valid and no lookup will be called anymore, intent may be released by ll_intent_release() with clobering -._magic, ->it_op, etc, as it will not be used anymore. In the case revalidate failed, intent should not clobber ->magic, as it will confuse ll_frob_intent() called from ll_lookup_it(). Instead ll_drop_intent_lock() and ll_intent_free() should be used.
    
    - in the case we found potential GNS dentry we do not cause GNS mountining by returning 0 from revalidate if GNS is disabled. This fixes possible NFS stales in some cases.
    54028ab8
    History
    - more fixes and comments about intent managing in ll_revalidate_it(). In few...
    Yury Umanets authored
    - more fixes and comments about intent managing in ll_revalidate_it(). In few words, in the cases dentry is valid and no lookup will be called anymore, intent may be released by ll_intent_release() with clobering -._magic, ->it_op, etc, as it will not be used anymore. In the case revalidate failed, intent should not clobber ->magic, as it will confuse ll_frob_intent() called from ll_lookup_it(). Instead ll_drop_intent_lock() and ll_intent_free() should be used.
    
    - in the case we found potential GNS dentry we do not cause GNS mountining by returning 0 from revalidate if GNS is disabled. This fixes possible NFS stales in some cases.