All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yunseong Kim <ysk@kzalloc.com>
To: Nam Cao <namcao@linutronix.de>
Cc: Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
	rostedt@goodmis.org, Gabriele Monaco <gmonaco@redhat.com>,
	Tomas Glozar <tglozar@redhat.com>,
	Shung-Hsi Yu <shung-hsi.yu@suse.com>,
	Byungchul Park <byungchul@sk.com>,
	syzkaller@googlegroups.com, linux-rt-devel@lists.linux.dev,
	LKML <linux-kernel@vger.kernel.org>,
	Dan Carpenter <dan.carpenter@linaro.org>
Subject: Re: [Question] Detecting Sleep-in-Atomic Context in PREEMPT_RT via RV (Runtime Verification) monitor rtapp:sleep
Date: Thu, 11 Dec 2025 16:58:55 +0900	[thread overview]
Message-ID: <0d06ce4c-6ff2-401a-90d9-5a4dfd2abebb@kzalloc.com> (raw)
In-Reply-To: <871pl1y3oh.fsf@yellow.woof>

Thanks you Nam, for pointing that out!

On 12/11/25 14:42, Nam Cao wrote:
> Yunseong Kim <ysk@kzalloc.com> writes:
>> I specifically believe that RV can encompass the role of
>> CONFIG_DEBUG_ATOMIC_SLEEP and even go beyond it.
>>
>> My reasoning is that even if a sleepable (PREEMPT_RT) spinlock is used
>> within an IRQ/preemption disabled section, CONFIG_DEBUG_ATOMIC_SLEEP
>> might not trigger a warning if scheduling does not actually occur (i.e.,
>> if there is no contention for that spinlock). This is because the actual
>> debugging check happens in __might_resched().
> 
> That's not how it works. See the description of CONFIG_DEBUG_ATOMIC_SLEEP:
> 
> "If you say Y here, various routines which may sleep will become very
> noisy if they are called inside atomic sections: when a spinlock is
> held, inside an rcu read side critical section, inside preempt disabled
> sections, inside an interrupt, etc..."

I am currently considering how to model this to cover cases that go 
beyond what CONFIG_DEBUG_ATOMIC_SLEEP covers.

My specific concern is about custom functions where might_sleep() might 
be missing. In such cases, if the code hits a fast path (no scheduling),
CONFIG_DEBUG_ATOMIC_SLEEP won't trigger. I'm wondering if RV can detect
these potential bugs.

> Nam


Thanks a lot for the quick reply!

Best regards,
Yunseong Kim

  reply	other threads:[~2025-12-11  7:59 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-10-27  6:54 [Question] Detecting Sleep-in-Atomic Context in PREEMPT_RT via RV (Runtime Verification) monitor rtapp:sleep Yunseong Kim
2025-10-27 12:20 ` Gabriele Monaco
2025-10-28 22:53   ` Yunseong Kim
2025-10-29  9:24     ` Gabriele Monaco
2025-11-05  9:10 ` Nam Cao
2025-12-02 11:14   ` Nam Cao
2025-12-02 11:26     ` Sebastian Andrzej Siewior
2025-12-11  4:30       ` Yunseong Kim
2025-12-11  5:42         ` Nam Cao
2025-12-11  7:58           ` Yunseong Kim [this message]
2025-12-22  7:40             ` Gabriele Monaco
2025-12-23 14:31               ` Yunseong Kim
2025-12-23 15:21                 ` Gabriele Monaco
2025-12-12  7:02       ` Dan Carpenter

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=0d06ce4c-6ff2-401a-90d9-5a4dfd2abebb@kzalloc.com \
    --to=ysk@kzalloc.com \
    --cc=bigeasy@linutronix.de \
    --cc=byungchul@sk.com \
    --cc=dan.carpenter@linaro.org \
    --cc=gmonaco@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rt-devel@lists.linux.dev \
    --cc=namcao@linutronix.de \
    --cc=rostedt@goodmis.org \
    --cc=shung-hsi.yu@suse.com \
    --cc=syzkaller@googlegroups.com \
    --cc=tglozar@redhat.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.