linux-fsdevel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "hoyoung seo" <hy50.seo@samsung.com>
To: <linux-scsi@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	<alim.akhtar@samsung.com>, <avri.altman@wdc.com>,
	<jejb@linux.ibm.com>, <martin.petersen@oracle.com>,
	<beanhuo@micron.com>, <bvanassche@acm.org>,
	<kwangwon.min@samsung.com>, <kwmad.kim@samsung.com>,
	<cpgs@samsung.com>, <h10.kim@samsung.com>,
	<linux-fsdevel@vger.kernel.org>, <hch@infradead.org>
Subject: Questions about dquota write by writeback in the context of storage shortage
Date: Fri, 8 Aug 2025 14:08:52 +0900	[thread overview]
Message-ID: <000001dc0822$886fc990$994f5cb0$@samsung.com> (raw)
In-Reply-To: CGME20250808050852epcas2p41faca5b3fd8a7bc18cc173ce44650bff@epcas2p4.samsung.com

Hi,

When the storage usage was full(99%), the following panic_on_warm occurred.

In this case, wb_writeback function used writeback workqeue included WQ_MEM_RECLAIM flag.
And wb_writeback function called f2fs_write_single_data_page for updating dquot(Write checkpoint to reclaim prefree segments)
In this case, dquot_writback_dquots function use events_unbound workqueue.
It is not include WQ_MEM_RECLAIM flag.
So occurred this problem.
First of all, I don't think this situation should be created, but I don't know why it's like this
So I guess quota_release_workfn function should use workqueue with WQ_MEM_RECLAIM flag, but is this the right solution?


workqueue: WQ_MEM_RECLAIM writeback:wb_workfn is flushing !WQ_MEM_RECLAIM events_unbound:quota_release_workfn
Call trace:
  check_flush_dependency+0x160/0x16c
  __flush_work+0x168/0x738
  flush_delayed_work+0x58/0x70
  dquot_writeback_dquots+0x90/0x4bc
  f2fs_do_quota_sync+0x120/0x284
  f2fs_write_checkpoint+0x58c/0xe18
  f2fs_gc+0x3e8/0xd78
  f2fs_balance_fs+0x204/0x284
  f2fs_write_single_data_page+0x700/0xaf0
  f2fs_write_data_pages+0xe94/0x15bc
  do_writepages+0x170/0x3f8
  __writeback_single_inode+0xa0/0x8c4
  writeback_sb_inodes+0x2ac/0x708
  __writeback_inodes_wb+0xc0/0x118
  wb_writeback+0x1f4/0x664
  wb_workfn+0x62c/0x900

Thanks.


           reply	other threads:[~2025-08-08  5:09 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <CGME20250808050852epcas2p41faca5b3fd8a7bc18cc173ce44650bff@epcas2p4.samsung.com>]

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='000001dc0822$886fc990$994f5cb0$@samsung.com' \
    --to=hy50.seo@samsung.com \
    --cc=alim.akhtar@samsung.com \
    --cc=avri.altman@wdc.com \
    --cc=beanhuo@micron.com \
    --cc=bvanassche@acm.org \
    --cc=cpgs@samsung.com \
    --cc=h10.kim@samsung.com \
    --cc=hch@infradead.org \
    --cc=jejb@linux.ibm.com \
    --cc=kwangwon.min@samsung.com \
    --cc=kwmad.kim@samsung.com \
    --cc=linux-fsdevel@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=martin.petersen@oracle.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;
as well as URLs for NNTP newsgroup(s).