summaryrefslogtreecommitdiff
path: root/sys/ufs/ffs/ffs_softdep.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/ufs/ffs/ffs_softdep.c')
-rw-r--r--sys/ufs/ffs/ffs_softdep.c45
1 files changed, 7 insertions, 38 deletions
diff --git a/sys/ufs/ffs/ffs_softdep.c b/sys/ufs/ffs/ffs_softdep.c
index 8cd281c25a7..62ba576934e 100644
--- a/sys/ufs/ffs/ffs_softdep.c
+++ b/sys/ufs/ffs/ffs_softdep.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: ffs_softdep.c,v 1.57 2005/06/10 17:37:40 pedro Exp $ */
+/* $OpenBSD: ffs_softdep.c,v 1.58 2005/06/18 18:09:43 millert Exp $ */
/*
* Copyright 1998, 2000 Marshall Kirk McKusick. All Rights Reserved.
*
@@ -2444,15 +2444,6 @@ softdep_setup_directory_add(bp, dp, diroffset, newinum, newdirbp)
struct inodedep *inodedep;
struct mkdir *mkdir1, *mkdir2;
- /*
- * Whiteouts have no dependencies.
- */
- if (newinum == WINO) {
- if (newdirbp != NULL)
- bdwrite(newdirbp);
- return;
- }
-
fs = dp->i_fs;
lbn = lblkno(fs, diroffset);
offset = blkoff(fs, diroffset);
@@ -2802,18 +2793,12 @@ softdep_setup_directory_change(bp, dp, ip, newinum, isrmdir)
struct inodedep *inodedep;
offset = blkoff(dp->i_fs, dp->i_offset);
-
- /*
- * Whiteouts do not need diradd dependencies.
- */
- if (newinum != WINO) {
- dap = pool_get(&diradd_pool, PR_WAITOK);
- bzero(dap,sizeof(struct diradd));
- dap->da_list.wk_type = D_DIRADD;
- dap->da_state = DIRCHG | ATTACHED | DEPCOMPLETE;
- dap->da_offset = offset;
- dap->da_newinum = newinum;
- }
+ dap = pool_get(&diradd_pool, PR_WAITOK);
+ bzero(dap,sizeof(struct diradd));
+ dap->da_list.wk_type = D_DIRADD;
+ dap->da_state = DIRCHG | ATTACHED | DEPCOMPLETE;
+ dap->da_offset = offset;
+ dap->da_newinum = newinum;
/*
* Allocate a new dirrem and ACQUIRE_LOCK.
@@ -2836,22 +2821,6 @@ softdep_setup_directory_change(bp, dp, ip, newinum, isrmdir)
dirrem->dm_state |= DIRCHG;
/*
- * Whiteouts have no additional dependencies,
- * so just put the dirrem on the correct list.
- */
- if (newinum == WINO) {
- if ((dirrem->dm_state & COMPLETE) == 0) {
- LIST_INSERT_HEAD(&pagedep->pd_dirremhd, dirrem,
- dm_next);
- } else {
- dirrem->dm_dirinum = pagedep->pd_ino;
- add_to_worklist(&dirrem->dm_list);
- }
- FREE_LOCK(&lk);
- return;
- }
-
- /*
* If the COMPLETE flag is clear, then there were no active
* entries and we want to roll back to the previous inode until
* the new inode is committed to disk. If the COMPLETE flag is