[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <E1HIwQG-0005OS-00@dorka.pomaz.szeredi.hu>
Date: Mon, 19 Feb 2007 01:30:28 +0100
From: Miklos Szeredi <miklos@...redi.hu>
To: akpm@...ux-foundation.org
CC: linux-kernel@...r.kernel.org, linux-mm@...ck.org
Subject: Re: dirty balancing deadlock
> --- a/fs/fs-writeback.c~a
> +++ a/fs/fs-writeback.c
> @@ -356,7 +356,7 @@ int generic_sync_sb_inodes(struct super_
> continue; /* Skip a congested blockdev */
> }
>
> - if (wbc->bdi && bdi != wbc->bdi) {
> + if (wbc->bdi && bdi != wbc->bdi && bdi_write_congested(bdi)) {
> if (!sb_is_blkdev_sb(sb))
> break; /* fs has the wrong queue */
> list_move(&inode->i_list, &sb->s_dirty);
Checking bdi_write_congested(bdi) is not reliable, since the queue can
become congested _after_ the check is done.
Miklos
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists