public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
From: Tejun Heo <tj@kernel.org>
To: Dave Chinner <david@fromorbit.com>
Cc: Tetsuo Handa <penguin-kernel@i-love.sakura.ne.jp>,
	Dan Schatzberg <schatzberg.dan@gmail.com>,
	Jens Axboe <axboe@kernel.dk>, Ming Lei <ming.lei@redhat.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jan Kara <jack@suse.cz>, Christoph Hellwig <hch@lst.de>,
	linux-block <linux-block@vger.kernel.org>,
	linux-xfs <linux-xfs@vger.kernel.org>
Subject: Re: [PATCH] loop: add WQ_MEM_RECLAIM flag to per device workqueue
Date: Tue, 22 Mar 2022 12:02:53 -1000	[thread overview]
Message-ID: <YjpHjRoq+WtOAmut@slm.duckdns.org> (raw)
In-Reply-To: <20220322220007.GQ1544202@dread.disaster.area>

Hello,

On Wed, Mar 23, 2022 at 09:00:07AM +1100, Dave Chinner wrote:
> > Yeah, you detected multiple issues at the same time. xfs sync is
> > participating in memory reclaim
> 
> No it isn't. What makes you think it is part of memory reclaim?
> 
> The xfs-sync workqueue exists solely to perform async flushes of
> dirty data at ENOSPC via sync_inodes_sb() because we can't call
> sync_inodes_sb directly in the context that hit ENOSPC due to locks
> and transaction contexts held. The paths that need this are
> buffered writes and file create (on disk inode allocation), neither
> of which are in the the memory reclaim path, either.
> 
> So this work has nothing to do with memory reclaim, and as such it's
> not tagged with WQ_MEM_RECLAIM.

Hmmm... yeah, I actually don't know the exact dependency here and the
dependency may not be real - e.g. the conclusion might be that loop is
conflating different uses and needs to split its use of workqueues into two
separate ones. Tetsuo, can you post more details on the warning that you're
seeing?

Thanks.

-- 
tejun

  reply	other threads:[~2022-03-22 22:03 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-17 14:08 [PATCH] loop: add WQ_MEM_RECLAIM flag to per device workqueue Tetsuo Handa
2022-03-17 14:38 ` Dan Schatzberg
2022-03-18 12:05   ` Tetsuo Handa
2022-03-18 17:15     ` Tejun Heo
2022-03-19  2:02       ` Tetsuo Handa
2022-03-21 16:55         ` Tejun Heo
2022-03-21 22:53           ` Tetsuo Handa
2022-03-21 23:04             ` Tejun Heo
2022-03-21 23:17               ` Tetsuo Handa
2022-03-21 23:27                 ` Tejun Heo
2022-03-22  0:09                   ` Tetsuo Handa
2022-03-22 16:52                     ` Tejun Heo
2022-03-22 22:00                       ` Dave Chinner
2022-03-22 22:02                         ` Tejun Heo [this message]
2022-03-22 22:05                           ` Tetsuo Handa
2022-03-22 22:19                             ` Tejun Heo
2022-03-22 22:59                               ` Dave Chinner
2022-03-22 23:32                                 ` Tetsuo Handa
2022-03-22 23:50                                   ` Dave Chinner
2022-03-23  0:09                                 ` Tejun Heo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YjpHjRoq+WtOAmut@slm.duckdns.org \
    --to=tj@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=axboe@kernel.dk \
    --cc=david@fromorbit.com \
    --cc=hch@lst.de \
    --cc=jack@suse.cz \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-xfs@vger.kernel.org \
    --cc=ming.lei@redhat.com \
    --cc=penguin-kernel@i-love.sakura.ne.jp \
    --cc=schatzberg.dan@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox