From 17bbd3f4274f1c8cfc1e3900fdd57fc9e62e0d2e Mon Sep 17 00:00:00 2001 From: Mingming Cao Date: Wed, 15 Oct 2008 22:04:01 -0700 Subject: [PATCH] --- yaml --- r: 114879 b: refs/heads/master c: d707d31c972b657dfc2efefd0b99cc4e14223dab h: refs/heads/master i: 114877: 7078b0fd2789b744cb67c45637ace853e09836e5 114875: e5f95957f39f8b5e5c61a2c887765aa602db73ee 114871: 51f02e77459ada159f32e0a38b5ad6258e360d42 114863: 62bd152f5726a7a5935eb701757dff09191aced5 114847: 988b9ea53fd630aef1aa4ce01de5b2099d99403f 114815: b3dad57aaa4edd385c907c50a38bf650b42bbb68 v: v3 --- [refs] | 2 +- trunk/fs/ext2/balloc.c | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 67456b25effb..b06f46e4e4cb 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 60836eb63b941f407dc2a609f3f0f34fd74ef6c3 +refs/heads/master: d707d31c972b657dfc2efefd0b99cc4e14223dab diff --git a/trunk/fs/ext2/balloc.c b/trunk/fs/ext2/balloc.c index 10bb02c3f25c..6dac7ba2d22d 100644 --- a/trunk/fs/ext2/balloc.c +++ b/trunk/fs/ext2/balloc.c @@ -1295,6 +1295,7 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal, * turn off reservation for this allocation */ if (my_rsv && (free_blocks < windowsz) + && (free_blocks > 0) && (rsv_is_empty(&my_rsv->rsv_window))) my_rsv = NULL; @@ -1332,7 +1333,7 @@ ext2_fsblk_t ext2_new_blocks(struct inode *inode, ext2_fsblk_t goal, * free blocks is less than half of the reservation * window size. */ - if (free_blocks <= (windowsz/2)) + if (my_rsv && (free_blocks <= (windowsz/2))) continue; brelse(bitmap_bh);