Messages in this thread |  | | Date | Mon, 4 Dec 2000 18:16:21 +0000 | From | "Stephen C. Tweedie" <> | Subject | Re: [PATCH] inode dirty blocks Re: test12-pre4 |
| |
On Mon, Dec 04, 2000 at 01:01:36AM -0500, Alexander Viro wrote: > > It doesn't solve the problem. If you unlink a file with dirty metadata > you have a nice chance to hit the BUG() in inode.c:83. I hope that patch > below closes all remaining holes. See analysis in previous posting > (basically, bforget() is not enough when we free the block; bh should > be removed from the inode's list regardless of the ->b_count).
Agreed. However, is there any reason to have this as a separate function? bforget() should _always_ remove the buffer from any inode queue. You can make that operation conditional on (bh->b_inode != NULL) if you want to avoid taking the lru lock unnecessarily.
--Stephen - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org Please read the FAQ at http://www.tux.org/lkml/
|  |