diff options
Diffstat (limited to 'fs/ocfs2/namei.c')
-rw-r--r-- | fs/ocfs2/namei.c | 26 |
1 files changed, 6 insertions, 20 deletions
diff --git a/fs/ocfs2/namei.c b/fs/ocfs2/namei.c index 5bd5f9948a2f..ca012446d8e7 100644 --- a/fs/ocfs2/namei.c +++ b/fs/ocfs2/namei.c | |||
@@ -334,13 +334,6 @@ static int ocfs2_mknod(struct inode *dir, | |||
334 | return status; | 334 | return status; |
335 | } | 335 | } |
336 | 336 | ||
337 | handle = ocfs2_alloc_handle(osb); | ||
338 | if (handle == NULL) { | ||
339 | status = -ENOMEM; | ||
340 | mlog_errno(status); | ||
341 | goto leave; | ||
342 | } | ||
343 | |||
344 | if (S_ISDIR(mode) && (dir->i_nlink >= OCFS2_LINK_MAX)) { | 337 | if (S_ISDIR(mode) && (dir->i_nlink >= OCFS2_LINK_MAX)) { |
345 | status = -EMLINK; | 338 | status = -EMLINK; |
346 | goto leave; | 339 | goto leave; |
@@ -368,7 +361,7 @@ static int ocfs2_mknod(struct inode *dir, | |||
368 | } | 361 | } |
369 | 362 | ||
370 | /* reserve an inode spot */ | 363 | /* reserve an inode spot */ |
371 | status = ocfs2_reserve_new_inode(osb, handle, &inode_ac); | 364 | status = ocfs2_reserve_new_inode(osb, &inode_ac); |
372 | if (status < 0) { | 365 | if (status < 0) { |
373 | if (status != -ENOSPC) | 366 | if (status != -ENOSPC) |
374 | mlog_errno(status); | 367 | mlog_errno(status); |
@@ -378,7 +371,7 @@ static int ocfs2_mknod(struct inode *dir, | |||
378 | /* are we making a directory? If so, reserve a cluster for his | 371 | /* are we making a directory? If so, reserve a cluster for his |
379 | * 1st extent. */ | 372 | * 1st extent. */ |
380 | if (S_ISDIR(mode)) { | 373 | if (S_ISDIR(mode)) { |
381 | status = ocfs2_reserve_clusters(osb, handle, 1, &data_ac); | 374 | status = ocfs2_reserve_clusters(osb, 1, &data_ac); |
382 | if (status < 0) { | 375 | if (status < 0) { |
383 | if (status != -ENOSPC) | 376 | if (status != -ENOSPC) |
384 | mlog_errno(status); | 377 | mlog_errno(status); |
@@ -386,7 +379,7 @@ static int ocfs2_mknod(struct inode *dir, | |||
386 | } | 379 | } |
387 | } | 380 | } |
388 | 381 | ||
389 | handle = ocfs2_start_trans(osb, handle, OCFS2_MKNOD_CREDITS); | 382 | handle = ocfs2_start_trans(osb, NULL, OCFS2_MKNOD_CREDITS); |
390 | if (IS_ERR(handle)) { | 383 | if (IS_ERR(handle)) { |
391 | status = PTR_ERR(handle); | 384 | status = PTR_ERR(handle); |
392 | handle = NULL; | 385 | handle = NULL; |
@@ -1649,14 +1642,7 @@ static int ocfs2_symlink(struct inode *dir, | |||
1649 | goto bail; | 1642 | goto bail; |
1650 | } | 1643 | } |
1651 | 1644 | ||
1652 | handle = ocfs2_alloc_handle(osb); | 1645 | status = ocfs2_reserve_new_inode(osb, &inode_ac); |
1653 | if (handle == NULL) { | ||
1654 | status = -ENOMEM; | ||
1655 | mlog_errno(status); | ||
1656 | goto bail; | ||
1657 | } | ||
1658 | |||
1659 | status = ocfs2_reserve_new_inode(osb, handle, &inode_ac); | ||
1660 | if (status < 0) { | 1646 | if (status < 0) { |
1661 | if (status != -ENOSPC) | 1647 | if (status != -ENOSPC) |
1662 | mlog_errno(status); | 1648 | mlog_errno(status); |
@@ -1665,7 +1651,7 @@ static int ocfs2_symlink(struct inode *dir, | |||
1665 | 1651 | ||
1666 | /* don't reserve bitmap space for fast symlinks. */ | 1652 | /* don't reserve bitmap space for fast symlinks. */ |
1667 | if (l > ocfs2_fast_symlink_chars(sb)) { | 1653 | if (l > ocfs2_fast_symlink_chars(sb)) { |
1668 | status = ocfs2_reserve_clusters(osb, handle, 1, &data_ac); | 1654 | status = ocfs2_reserve_clusters(osb, 1, &data_ac); |
1669 | if (status < 0) { | 1655 | if (status < 0) { |
1670 | if (status != -ENOSPC) | 1656 | if (status != -ENOSPC) |
1671 | mlog_errno(status); | 1657 | mlog_errno(status); |
@@ -1673,7 +1659,7 @@ static int ocfs2_symlink(struct inode *dir, | |||
1673 | } | 1659 | } |
1674 | } | 1660 | } |
1675 | 1661 | ||
1676 | handle = ocfs2_start_trans(osb, handle, credits); | 1662 | handle = ocfs2_start_trans(osb, NULL, credits); |
1677 | if (IS_ERR(handle)) { | 1663 | if (IS_ERR(handle)) { |
1678 | status = PTR_ERR(handle); | 1664 | status = PTR_ERR(handle); |
1679 | handle = NULL; | 1665 | handle = NULL; |