Whamcloud - gitweb
- many fixes in GNS code after Nikita's code review. They are the following:
authoryury <yury>
Mon, 18 Apr 2005 12:13:53 +0000 (12:13 +0000)
committeryury <yury>
Mon, 18 Apr 2005 12:13:53 +0000 (12:13 +0000)
commit344a777d544a05a8c11f86c0f3e8e5945406dc14
treeef2e35ed3b19a67cf96e493ccb92b306b6c2d673
parentc449656e3bc00e67e1c48c4bb7a4c23426c56a43
- many fixes in GNS code after Nikita's code review. They are the following:
  - removed ll_d_lookup() as it is not used anymore.

  - removed struts from real_lookup() with calling revalidate() after lookup if dentry
    is marked GNS_MOUNTING. By now all this dentry marking is not needed anymore.

  - ll_gns_mount_object() is now called from ll_revalidate_it() and ll_lookup_it()

  - fixed deadlock when one thread T1 waits for mount completion and another one T2
    created by upcall script waits for dentry->d_inode->i_sem. By now -ERESTARTSYS
    is returned for T2 and others and whren they restart syscall, dentry is mounted
    already or some error occured and GNS state is READY for mount.

  - fixes in comments and header of llite_gns.c

  - fixed possible incorrect spin_unlock() in ll_gns_mount_object()

  - using lookup_one_len() for looking for mount object instead of d_lookup() which
    looks only in dcache.

  - fixed handling of negative mount object dentry in ll_gns_mount_object()

  - fixed readding mount object content. By now kernel_read() is used instead of
    readpage approach.

  - waking up all possible waiters on finishing GNS mount. Nevertheless in current
    stuff nobody seem waits for mount (-RESTARTSYS is used instead), completion
    exists and it is semanticaly correct to wake up all its waiters. In fact this
    is needed for possible future using. If it happen that nobody will wait on it
    and it is counted not needed, it will be removed.
lustre/include/linux/lvfs.h
lustre/kernel_patches/patches/vfs_gns-2.6-vanilla.patch
lustre/llite/dcache.c
lustre/llite/dir.c
lustre/llite/llite_gns.c
lustre/llite/llite_internal.h
lustre/llite/namei.c