From: Joel Fernandes <joel@joelfernandes.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Xiao Yang <yangx.jy@cn.fujitsu.com>,
linux-kernel@vger.kernel.org, Ingo Molnar <mingo@redhat.com>
Subject: Re: [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload
Date: Wed, 29 Apr 2020 15:12:24 -0400 [thread overview]
Message-ID: <20200429191224.GA75562@google.com> (raw)
In-Reply-To: <20200429123141.580f89ce@gandalf.local.home>
On Wed, Apr 29, 2020 at 12:31:41PM -0400, Steven Rostedt wrote:
> On Wed, 29 Apr 2020 19:54:16 +0800
> Xiao Yang <yangx.jy@cn.fujitsu.com> wrote:
>
> > On 2020/4/28 22:45, Steven Rostedt wrote:
> > > diff --git a/kernel/trace/preemptirq_delay_test.c b/kernel/trace/preemptirq_delay_test.c
> > >> index 1c28ca20e30b..6d9131ae7e8c 100644
> > >> --- a/kernel/trace/preemptirq_delay_test.c
> > >> +++ b/kernel/trace/preemptirq_delay_test.c
> > >> @@ -113,15 +113,27 @@ static int preemptirq_delay_run(void *data)
> > >>
> > >> for (i = 0; i< s; i++)
> > >> (testfuncs[i])(i);
> > >> +
> > >> + while (!kthread_should_stop()) {
> > >> + schedule();
> > >> + set_current_state(TASK_INTERRUPTIBLE);
> > >> + }
> > >> +
> > >> + __set_current_state(TASK_RUNNING);
> > >> +
> > >> return 0;
> > >> }
> > >>
> > Hi Steven,
> >
> > Thanks for your patch.
> >
> > I also used the following steps to do test and didn't get any
> > warning/panic after applying your patch.
> > ---------------------------------
> > for i in $(seq 1 100); do modprobe preemptirq_delay_test test_mode=irq
> > delay=500000; rmmod preemptirq_delay_test; done
> > for i in $(seq 1 100); do modprobe preemptirq_delay_test
> > test_mode=preempt delay=500000; rmmod preemptirq_delay_test; done
> > ---------------------------------
> >
> > But I am not sure which fix(from you and Joel) is better.
>
> Mine ;-)
>
> The "kthread_should_stop()" is the normal way to end kernel threads. Using
> get/put is not the orthodox way.
Agreed :-) thanks.
- Joel
next prev parent reply other threads:[~2020-04-29 19:12 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-04-24 22:36 [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload Joel Fernandes (Google)
2020-04-28 10:19 ` Xiao Yang
2020-04-28 14:15 ` Joel Fernandes
2020-04-29 11:47 ` Xiao Yang
2020-04-28 14:44 ` Steven Rostedt
2020-04-28 14:45 ` Steven Rostedt
2020-04-29 11:54 ` Xiao Yang
2020-04-29 16:31 ` Steven Rostedt
2020-04-29 19:12 ` Joel Fernandes [this message]
2020-05-06 13:38 ` Steven Rostedt
2020-05-06 14:30 ` [PATCH] tracing: Wait for preempt irq delay thread to finish Steven Rostedt
2020-05-07 10:05 ` Xiao Yang
2020-05-07 12:29 ` joel
2020-04-29 11:37 ` [PATCH] kernel/trace: Stop and wait for kthread on preempt irq module unload Xiao Yang
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=20200429191224.GA75562@google.com \
--to=joel@joelfernandes.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=rostedt@goodmis.org \
--cc=yangx.jy@cn.fujitsu.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.