[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220419081755.GN2731@worktop.programming.kicks-ass.net>
Date: Tue, 19 Apr 2022 10:17:55 +0200
From: Peter Zijlstra <peterz@...radead.org>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: Zhihao Cheng <chengzhihao1@...wei.com>,
Ingo Molnar <mingo@...hat.com>, Jens Axboe <axboe@...nel.dk>,
Al Viro <viro@...iv.linux.org.uk>,
Christoph Hellwig <hch@....de>,
linux-fsdevel <linux-fsdevel@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
yukuai3@...wei.com
Subject: Re: [PATCH v2] fs-writeback: writeback_sb_inodes:Recalculate 'wrote'
according skipped pages
On Mon, Apr 18, 2022 at 12:43:43PM -0700, Linus Torvalds wrote:
> Which all brings us back to how we have that hacky thing in
> writeback_sb_inodes() that does
>
> if (need_resched()) {
> /*
> * We're trying to balance between building up a nice
> * long list of IOs to improve our merge rate, and
> * getting those IOs out quickly for anyone throttling
> * in balance_dirty_pages(). cond_resched() doesn't
> * unplug, so get our IOs out the door before we
> * give up the CPU.
> */
> blk_flush_plug(current->plug, false);
> cond_resched();
> }
Yeah, that's horribly broken for PREEMPT=y.
Powered by blists - more mailing lists