[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bmthlv2tsd76mgzaoy5gspzdkved6le5xv23xjsc3yafkhrsgh@vvmjdwygm7gn>
Date: Thu, 2 Oct 2025 10:40:56 +0200
From: Jan Kara <jack@...e.cz>
To: Byungchul Park <byungchul@...com>
Cc: linux-kernel@...r.kernel.org, kernel_team@...ynix.com,
torvalds@...ux-foundation.org, damien.lemoal@...nsource.wdc.com, linux-ide@...r.kernel.org,
adilger.kernel@...ger.ca, linux-ext4@...r.kernel.org, mingo@...hat.com,
peterz@...radead.org, will@...nel.org, tglx@...utronix.de, rostedt@...dmis.org,
joel@...lfernandes.org, sashal@...nel.org, daniel.vetter@...ll.ch, duyuyang@...il.com,
johannes.berg@...el.com, tj@...nel.org, tytso@....edu, willy@...radead.org,
david@...morbit.com, amir73il@...il.com, gregkh@...uxfoundation.org,
kernel-team@....com, linux-mm@...ck.org, akpm@...ux-foundation.org, mhocko@...nel.org,
minchan@...nel.org, hannes@...xchg.org, vdavydov.dev@...il.com, sj@...nel.org,
jglisse@...hat.com, dennis@...nel.org, cl@...ux.com, penberg@...nel.org,
rientjes@...gle.com, vbabka@...e.cz, ngupta@...are.org, linux-block@...r.kernel.org,
josef@...icpanda.com, linux-fsdevel@...r.kernel.org, jack@...e.cz, jlayton@...nel.org,
dan.j.williams@...el.com, hch@...radead.org, djwong@...nel.org,
dri-devel@...ts.freedesktop.org, rodrigosiqueiramelo@...il.com, melissa.srw@...il.com,
hamohammed.sa@...il.com, harry.yoo@...cle.com, chris.p.wilson@...el.com,
gwan-gyeong.mun@...el.com, max.byungchul.park@...il.com, boqun.feng@...il.com,
longman@...hat.com, yunseong.kim@...csson.com, ysk@...lloc.com, yeoreum.yun@....com,
netdev@...r.kernel.org, matthew.brost@...el.com, her0gyugyu@...il.com, corbet@....net,
catalin.marinas@....com, bp@...en8.de, dave.hansen@...ux.intel.com, x86@...nel.org,
hpa@...or.com, luto@...nel.org, sumit.semwal@...aro.org, gustavo@...ovan.org,
christian.koenig@....com, andi.shyti@...nel.org, arnd@...db.de, lorenzo.stoakes@...cle.com,
Liam.Howlett@...cle.com, rppt@...nel.org, surenb@...gle.com, mcgrof@...nel.org,
petr.pavlu@...e.com, da.gomez@...nel.org, samitolvanen@...gle.com, paulmck@...nel.org,
frederic@...nel.org, neeraj.upadhyay@...nel.org, joelagnelf@...dia.com,
josh@...htriplett.org, urezki@...il.com, mathieu.desnoyers@...icios.com,
jiangshanlai@...il.com, qiang.zhang@...ux.dev, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com, bsegall@...gle.com, mgorman@...e.de,
vschneid@...hat.com, chuck.lever@...cle.com, neil@...wn.name, okorniev@...hat.com,
Dai.Ngo@...cle.com, tom@...pey.com, trondmy@...nel.org, anna@...nel.org,
kees@...nel.org, bigeasy@...utronix.de, clrkwllms@...nel.org,
mark.rutland@....com, ada.coupriediaz@....com, kristina.martsenko@....com,
wangkefeng.wang@...wei.com, broonie@...nel.org, kevin.brodsky@....com, dwmw@...zon.co.uk,
shakeel.butt@...ux.dev, ast@...nel.org, ziy@...dia.com, yuzhao@...gle.com,
baolin.wang@...ux.alibaba.com, usamaarif642@...il.com, joel.granados@...nel.org,
richard.weiyang@...il.com, geert+renesas@...der.be, tim.c.chen@...ux.intel.com,
linux@...blig.org, alexander.shishkin@...ux.intel.com, lillian@...r-ark.net,
chenhuacai@...nel.org, francesco@...la.it, guoweikang.kernel@...il.com, link@...o.com,
jpoimboe@...nel.org, masahiroy@...nel.org, brauner@...nel.org,
thomas.weissschuh@...utronix.de, oleg@...hat.com, mjguzik@...il.com, andrii@...nel.org,
wangfushuai@...du.com, linux-doc@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-media@...r.kernel.org, linaro-mm-sig@...ts.linaro.org, linux-i2c@...r.kernel.org,
linux-arch@...r.kernel.org, linux-modules@...r.kernel.org, rcu@...r.kernel.org,
linux-nfs@...r.kernel.org, linux-rt-devel@...ts.linux.dev
Subject: Re: [PATCH v17 30/47] fs/jbd2: use a weaker annotation in journal
handling
On Thu 02-10-25 17:12:30, Byungchul Park wrote:
> jbd2 journal handling code doesn't want jbd2_might_wait_for_commit()
> to be placed between start_this_handle() and stop_this_handle(). So it
> marks the region with rwsem_acquire_read() and rwsem_release().
>
> However, the annotation is too strong for that purpose. We don't have
> to use more than try lock annotation for that.
>
> rwsem_acquire_read() implies:
>
> 1. might be a waiter on contention of the lock.
> 2. enter to the critical section of the lock.
>
> All we need in here is to act 2, not 1. So trylock version of
> annotation is sufficient for that purpose. Now that dept partially
> relies on lockdep annotaions, dept interpets rwsem_acquire_read() as a
> potential wait and might report a deadlock by the wait.
>
> Replace it with trylock version of annotation.
>
> Signed-off-by: Byungchul Park <byungchul@...com>
Indeed. Feel free to add:
Reviewed-by: Jan Kara <jack@...e.cz>
Honza
> ---
> fs/jbd2/transaction.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/jbd2/transaction.c b/fs/jbd2/transaction.c
> index c7867139af69..b4e65f51bf5e 100644
> --- a/fs/jbd2/transaction.c
> +++ b/fs/jbd2/transaction.c
> @@ -441,7 +441,7 @@ static int start_this_handle(journal_t *journal, handle_t *handle,
> read_unlock(&journal->j_state_lock);
> current->journal_info = handle;
>
> - rwsem_acquire_read(&journal->j_trans_commit_map, 0, 0, _THIS_IP_);
> + rwsem_acquire_read(&journal->j_trans_commit_map, 0, 1, _THIS_IP_);
> jbd2_journal_free_transaction(new_transaction);
> /*
> * Ensure that no allocations done while the transaction is open are
> --
> 2.17.1
>
--
Jan Kara <jack@...e.com>
SUSE Labs, CR
Powered by blists - more mailing lists