X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=fs%2Fquota_v2.c;h=7afcbb1b93761a539ddb8d31f4448b122f6f5e6b;hb=f7f1b0f1e2fbadeab12d24236000e778aa9b1ead;hp=19bdb7b86ca77b436b63f8dc6f0dbf5493bc4b36;hpb=e3f6fb6212a7102bdb56ba38fa1e98fe72950475;p=linux-2.6.git diff --git a/fs/quota_v2.c b/fs/quota_v2.c index 19bdb7b86..7afcbb1b9 100644 --- a/fs/quota_v2.c +++ b/fs/quota_v2.c @@ -503,7 +503,8 @@ static int remove_tree(struct dquot *dquot, uint *blk, int depth) int i; ref[GETIDINDEX(dquot->dq_id, depth)] = cpu_to_le32(0); for (i = 0; i < V2_DQBLKSIZE && !buf[i]; i++); /* Block got empty? */ - if (i == V2_DQBLKSIZE) { + /* Don't put the root block into the free block list */ + if (i == V2_DQBLKSIZE && *blk != V2_DQTREEOFF) { put_free_dqblk(sb, type, buf, *blk); *blk = 0; }