mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Waiman Long <longman@redhat.com>
To: paulmck@kernel.org
Cc: Davidlohr Bueso <dave@stgolabs.net>,
	Josh Triplett <josh@joshtriplett.org>,
	Frederic Weisbecker <frederic@kernel.org>,
	Neeraj Upadhyay <quic_neeraju@quicinc.com>,
	Joel Fernandes <joel@joelfernandes.org>,
	Steven Rostedt <rostedt@goodmis.org>,
	Mathieu Desnoyers <mathieu.desnoyers@efficios.com>,
	Lai Jiangshan <jiangshanlai@gmail.com>,
	Boqun Feng <boqun.feng@gmail.com>,
	Zqiang <qiang.zhang1211@gmail.com>,
	rcu@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] refscale: Fix use of uninitalized wait_queue_head_t
Date: Fri, 7 Jul 2023 13:57:02 -0400	[thread overview]
Message-ID: <f9531585-2782-bdfe-cdca-39d2de2e195f@redhat.com> (raw)
In-Reply-To: <8b827d44-b19b-4eb2-8860-f419cc61084e@paulmck-laptop>

On 7/7/23 12:16, Paul E. McKenney wrote:
> On Fri, Jul 07, 2023 at 10:56:51AM -0400, Waiman Long wrote:
>> On 7/7/23 10:07, Davidlohr Bueso wrote:
>>> On Thu, 06 Jul 2023, Waiman Long wrote:
>>>
>>>> It was found that running the refscale test might sometimes crash the
>>>> kernel with the following error:
>>>>
>>>> [ 8569.952896] BUG: unable to handle page fault for address:
>>>> ffffffffffffffe8
>>>> [ 8569.952900] #PF: supervisor read access in kernel mode
>>>> [ 8569.952902] #PF: error_code(0x0000) - not-present page
>>>> [ 8569.952904] PGD c4b048067 P4D c4b049067 PUD c4b04b067 PMD 0
>>>> [ 8569.952910] Oops: 0000 [#1] PREEMPT_RT SMP NOPTI
>>>> [ 8569.952916] Hardware name: Dell Inc. PowerEdge R750/0WMWCR, BIOS
>>>> 1.2.4 05/28/2021
>>>> [ 8569.952917] RIP: 0010:prepare_to_wait_event+0x101/0x190
>>>>   :
>>>> [ 8569.952940] Call Trace:
>>>> [ 8569.952941]  <TASK>
>>>> [ 8569.952944]  ref_scale_reader+0x380/0x4a0 [refscale]
>>>> [ 8569.952959]  kthread+0x10e/0x130
>>>> [ 8569.952966]  ret_from_fork+0x1f/0x30
>>>> [ 8569.952973]  </TASK>
>>>>
>>>> This is likely caused by the fact that init_waitqueue_head() is called
>>>> after the ref_scale_reader kthread is created. So the kthread may try
>>>> to use the waitqueue head before it is properly initialized. Fix this
>>>> by initializing the waitqueue head first before kthread creation.
>>>>
>>>> Fixes: 653ed64b01dc ("refperf: Add a test to measure performance of
>>>> read-side synchronization")
>>>> Signed-off-by: Waiman Long <longman@redhat.com>
>>> Strange this wasn't reported sooner.
>> Red Hat does have a pretty large QE organization that run all sort of tests
>> include this one pretty frequently. The race window is pretty small, but
>> they did hit this once in a while.
> I do run this fairly frequently, but haven't managed to hit it.
>
> Good show on making it happen, and looking forward to the updated patch!

v2 sent with a bit more explanation text in the commit log.

Cheers,
Longman


  reply	other threads:[~2023-07-07 17:57 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-07-07  0:01 Waiman Long
2023-07-07  7:27 ` Zhuo, Qiuxu
2023-07-07 13:09   ` Waiman Long
2023-07-07 14:07 ` Davidlohr Bueso
2023-07-07 14:56   ` Waiman Long
2023-07-07 16:16     ` Paul E. McKenney
2023-07-07 17:57       ` Waiman Long [this message]
2023-07-07 19:24     ` Joel Fernandes
2023-07-07 19:52       ` Paul E. McKenney

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=f9531585-2782-bdfe-cdca-39d2de2e195f@redhat.com \
    --to=longman@redhat.com \
    --cc=boqun.feng@gmail.com \
    --cc=dave@stgolabs.net \
    --cc=frederic@kernel.org \
    --cc=jiangshanlai@gmail.com \
    --cc=joel@joelfernandes.org \
    --cc=josh@joshtriplett.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mathieu.desnoyers@efficios.com \
    --cc=paulmck@kernel.org \
    --cc=qiang.zhang1211@gmail.com \
    --cc=quic_neeraju@quicinc.com \
    --cc=rcu@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    /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

Powered by JetHome