Whamcloud - gitweb
b=1792: Fix iopen_connect_dentry to properly rehash the __iopen__ dentry when
authorshaver <shaver>
Thu, 11 Sep 2003 22:04:20 +0000 (22:04 +0000)
committershaver <shaver>
Thu, 11 Sep 2003 22:04:20 +0000 (22:04 +0000)
        coverting it into a real, "connected" dentry.

lustre/kernel_patches/patches/iopen-2.4.18.patch
lustre/kernel_patches/patches/iopen-2.4.20.patch

index b983b33..7fc40f7 100644 (file)
 +
 +      /* Move the goal to the de hash queue - like d_move() */
 +      goal->d_flags &= ~DCACHE_NFSD_DISCONNECTED;
-+      list_del(&goal->d_hash);
-+      list_add(&goal->d_hash, &de->d_hash);
++      list_del_init(&goal->d_hash);
 +
 +      list_del(&goal->d_child);
 +      list_del(&de->d_child);
 +      /* And add them back to the (new) parent lists */
 +      list_add(&goal->d_child, &goal->d_parent->d_subdirs);
 +      list_add(&de->d_child, &de->d_parent->d_subdirs);
++      __d_rehash(goal, 0);
 +      spin_unlock(&dcache_lock);
 +
 +      return goal;
index ec48814..dcf2fc0 100644 (file)
 +
 +      /* Move the goal to the de hash queue - like d_move() */
 +      goal->d_flags &= ~DCACHE_NFSD_DISCONNECTED;
-+      list_del(&goal->d_hash);
-+      list_add(&goal->d_hash, &de->d_hash);
++      list_del_init(&goal->d_hash);
 +
 +      list_del(&goal->d_child);
 +      list_del(&de->d_child);
 +      /* And add them back to the (new) parent lists */
 +      list_add(&goal->d_child, &goal->d_parent->d_subdirs);
 +      list_add(&de->d_child, &de->d_parent->d_subdirs);
++      __d_rehash(goal, 0);
 +      spin_unlock(&dcache_lock);
 +
 +      return goal;