From: NeilBrown Date: Wed, 28 Jul 2010 12:15:06 +0000 (+1000) Subject: Don't clear PinPending without a good reason. X-Git-Url: http://git.neil.brown.name/?a=commitdiff_plain;h=7ffba574d183d3d6c7fa9cfc9a2db726d8bb70b4;p=LaFS.git Don't clear PinPending without a good reason. This definitely is wrong. If an inode change is waiting for previous-phase data to be written, we don't want to lose the PinPending. Signed-off-by: NeilBrown --- diff --git a/cluster.c b/cluster.c index 0bf1db5..13f5f72 100644 --- a/cluster.c +++ b/cluster.c @@ -703,7 +703,6 @@ int lafs_cluster_allocate(struct block *b, int cnum) if (!test_and_clear_bit(B_ICredit, &b2->flags)) credits--; } - clear_bit(B_PinPending, &b2->flags); // FIXME not sure this is right LAFS_BUG(credits < 0, b2); lafs_space_return(fs, credits); /* make sure 'dirty' status is registered */