ocfs2: ocfs2_link() journal credits update
authorMark Fasheh <mark.fasheh@oracle.com>
Thu, 1 Feb 2007 19:40:16 +0000 (11:40 -0800)
committerMark Fasheh <mark.fasheh@oracle.com>
Thu, 1 Feb 2007 20:03:19 +0000 (12:03 -0800)
Commit 592282cf2eaa33409c6511ddd3f3ecaa57daeaaa fixed some missing directory
c/mtime updates in part by introducing a dinode update in ocfs2_add_entry().
Unfortunately, ocfs2_link() (which didn't update the directory inode before)
is now missing a single journal credit. Fix this by doubling the number of
inode updates expected during hard link creation.

Signed-off-by: Mark Fasheh <mark.fasheh@oracle.com>
fs/ocfs2/journal.h

index e1216364d191566ba80b276796afb965fe8ebb61..d026b4f27757ebfb1d60346eabd074adb7d8d247 100644 (file)
@@ -306,8 +306,8 @@ int                  ocfs2_journal_dirty_data(handle_t *handle,
  * for the dinode, one for the new block. */
 #define OCFS2_SIMPLE_DIR_EXTEND_CREDITS (2)
 
-/* file update (nlink, etc) + dir entry block */
-#define OCFS2_LINK_CREDITS  (OCFS2_INODE_UPDATE_CREDITS + 1)
+/* file update (nlink, etc) + directory mtime/ctime + dir entry block */
+#define OCFS2_LINK_CREDITS  (2*OCFS2_INODE_UPDATE_CREDITS + 1)
 
 /* inode + dir inode (if we unlink a dir), + dir entry block + orphan
  * dir inode link */