sparclinux.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Waiman Long <llong@redhat.com>
To: Guenter Roeck <linux@roeck-us.net>,
	Sebastian Andrzej Siewior <bigeasy@linutronix.de>
Cc: Andreas Larsson <andreas@gaisler.com>,
	Waiman Long <llong@redhat.com>,
	sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org,
	Boqun Feng <boqun.feng@gmail.com>, Ingo Molnar <mingo@redhat.com>,
	Peter Zijlstra <peterz@infradead.org>,
	Thomas Gleixner <tglx@linutronix.de>,
	Will Deacon <will@kernel.org>,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH] sparc/pci: Make pci_poke_lock a raw_spinlock_t.
Date: Wed, 27 Nov 2024 18:47:08 -0500	[thread overview]
Message-ID: <c029c2fd-8bac-4913-b98f-f09acd7d28e1@redhat.com> (raw)
In-Reply-To: <bf7bd668-974f-481d-9526-94964455a250@roeck-us.net>

On 11/27/24 12:44 PM, Guenter Roeck wrote:
> On 11/27/24 08:53, Sebastian Andrzej Siewior wrote:
>> On 2024-11-27 08:02:50 [-0800], Guenter Roeck wrote:
>>> On 11/27/24 07:39, Andreas Larsson wrote:
>>>> Even though this is for sparc64, there is work being done looking into
>>>> enabling RT for sparc32. If the amount of fixes needed to keep
>>>> PROVE_RAW_LOCK_NESTING enabled is quite small at the moment I'd rather
>>>> see it enabled for sparc rather than risking it becoming worse in the
>>>> future.
>>
>> Okay. So you seem to be in favour of fixing the sparc64 splats Guenter
>> reported?
>>
>>>> I don't know what the situation is for other architectures that 
>>>> does not
>>>> support RT.
>>>>
>>>
>>> For my part I still don't understand why PROVE_RAW_LOCK_NESTING is 
>>> no longer
>>> a configurable option, or in other words why it is mandated even for 
>>> architectures
>>> not supporting RT. To me this means that I'll either have to disable 
>>> PROVE_LOCKING
>>> for sparc or live with endless warning backtraces. The latter 
>>> obscures real
>>> problems, so it is a no-go.
>>
>> It is documented in Documentation/locking/locktypes.rst how the locks
>> should nest. It is just nobody enabled it on sparc64 and tested. The
>> option was meant temporary until the big read blocks are cleared.
>>
>
> That doesn't explain why PROVE_RAW_LOCK_NESTING is now mandatory if
> PROVE_LOCKING is enabled, even on architectures where is was not tested.
> I am all for testing, but that doesn't include making it mandatory
> even where it is known to fail. Enabling it by default, sure, no problem.
> Dropping the option entirely after it is proven to no longer needed,
> also no problem. But force-enabling it even where untested or, worse,
> known to fail, is two steps too far.

The main reason for enforcing PROVE_RAW_LOCK_NESTING with PROVE_LOCKING 
is due to the fact that PREEMPT_RT kernel is much less tested than the 
non-RT kernel. I do agree that we shouldn't force this on arches that 
don't support PREEMPT_RT. However, once an arch decides to support 
PREEMPT_RT, they have to fix all these raw_spinlock nesting problems.

Cheers,
Longman



  reply	other threads:[~2024-11-27 23:47 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20241009161041.1018375-1-bigeasy@linutronix.de>
     [not found] ` <20241009161041.1018375-2-bigeasy@linutronix.de>
     [not found]   ` <7656395b-58fc-4874-a9f3-6d934e2ef7ee@roeck-us.net>
2024-11-25  8:53     ` [PATCH] sparc/pci: Make pci_poke_lock a raw_spinlock_t Sebastian Andrzej Siewior
2024-11-25 17:01       ` Guenter Roeck
2024-11-25 17:43         ` Sebastian Andrzej Siewior
2024-11-25 17:59           ` Guenter Roeck
2024-11-25 18:12             ` Sebastian Andrzej Siewior
2024-11-25 19:23               ` Guenter Roeck
2024-11-25 19:33                 ` Waiman Long
2024-11-25 20:06                   ` Guenter Roeck
2024-11-25 20:23                     ` Guenter Roeck
2024-11-25 20:54                       ` Waiman Long
2024-11-25 21:25                         ` Guenter Roeck
2024-11-25 21:29                           ` Waiman Long
2024-11-25 21:54                             ` Guenter Roeck
2024-11-25 22:33                               ` Waiman Long
2024-11-26 11:20                         ` Sebastian Andrzej Siewior
2024-11-26 16:59                           ` Waiman Long
2024-11-27 15:39                             ` Andreas Larsson
2024-11-27 16:02                               ` Guenter Roeck
2024-11-27 16:53                                 ` Sebastian Andrzej Siewior
2024-11-27 17:44                                   ` Guenter Roeck
2024-11-27 23:47                                     ` Waiman Long [this message]
2024-11-28  0:08                                       ` Guenter Roeck
2024-11-28  0:31                                         ` Waiman Long
2024-11-28  1:17                                           ` Guenter Roeck
2024-11-28  1:55                                             ` Waiman Long

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=c029c2fd-8bac-4913-b98f-f09acd7d28e1@redhat.com \
    --to=llong@redhat.com \
    --cc=andreas@gaisler.com \
    --cc=bigeasy@linutronix.de \
    --cc=boqun.feng@gmail.com \
    --cc=davem@davemloft.net \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=sparclinux@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=will@kernel.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;
as well as URLs for NNTP newsgroup(s).