From: Peter Zijlstra <peterz@infradead.org>
To: Finn Thain <fthain@linux-m68k.org>
Cc: Andrew Morton <akpm@linux-foundation.org>,
Lance Yang <lance.yang@linux.dev>,
Geert Uytterhoeven <geert@linux-m68k.org>,
Masami Hiramatsu <mhiramat@kernel.org>,
Eero Tamminen <oak@helsinkinet.fi>, Will Deacon <will@kernel.org>,
stable@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH] atomic: Specify natural alignment for atomic_t
Date: Wed, 27 Aug 2025 13:54:47 +0200 [thread overview]
Message-ID: <20250827115447.GR3289052@noisy.programming.kicks-ass.net> (raw)
In-Reply-To: <9453560f-2240-ab6f-84f1-0bb99d118998@linux-m68k.org>
On Wed, Aug 27, 2025 at 05:17:19PM +1000, Finn Thain wrote:
>
> On Mon, 25 Aug 2025, Peter Zijlstra wrote:
>
> > On Mon, Aug 25, 2025 at 06:03:23PM +1000, Finn Thain wrote:
> > >
> > > On Mon, 25 Aug 2025, Peter Zijlstra wrote:
> > >
> > > >
> > > > And your architecture doesn't trap on unaligned atomic access ?!!?!
> > > >
> > >
> > > Right. This port doesn't do SMP.
> >
> > There is RMW_INSN which seems to imply a compare-and-swap instruction of
> > sorts. That is happy to work on unaligned storage?
> >
>
> Yes, the TAS and CAS instructions are happy to work on unaligned storage.
>
> However, these operations involve an indivisible bus cycle that hogs the
> bus to the detriment of other processors, DMA controllers etc. So I
> suspect lock alignment would tend to shorten read-modify-write cycles, and
> improve efficiency, when CONFIG_RMW_INSN is enabled.
>
> Most m68k platforms will have CONFIG_RMW_INSN disabled, or else simply
> don't implement TAS and CAS. In this case, lock alignment might still
> help, just because L1 cache entries are long words. I've not tried to
> measure this.
Fair enough; this sounds a little like the x86 LOCK prefix, it will work
on unaligned memory, but at tremendous cost (recent chips have an
optional exception on unaligned).
Anyway, I'm not opposed to adding an explicit alignment to atomic_t.
Isn't s32 or __s32 already having this?
But I think it might make sense to have a DEBUG alignment check right
along with adding that alignment, just to make sure things are indeed /
stay aligned.
next prev parent reply other threads:[~2025-08-27 11:54 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-25 2:03 Finn Thain
2025-08-25 3:27 ` Lance Yang
2025-08-25 3:59 ` Finn Thain
2025-08-25 4:22 ` Lance Yang
2025-08-25 4:07 ` Finn Thain
2025-08-25 5:00 ` Lance Yang
2025-08-25 6:17 ` Finn Thain
2025-08-25 7:46 ` Lance Yang
2025-08-25 10:49 ` Finn Thain
2025-08-25 11:19 ` Lance Yang
2025-08-25 11:36 ` Lance Yang
2025-08-27 23:43 ` Finn Thain
2025-08-28 2:05 ` Lance Yang
2025-09-01 8:45 ` Geert Uytterhoeven
2025-09-02 13:30 ` Lance Yang
2025-09-02 14:14 ` Geert Uytterhoeven
2025-09-06 11:43 ` David Laight
2025-08-25 12:07 ` David Laight
2025-08-25 12:33 ` Lance Yang
2025-08-27 8:00 ` Finn Thain
2025-08-27 9:34 ` Lance Yang
2025-09-01 8:48 ` Geert Uytterhoeven
2025-08-25 7:12 ` Peter Zijlstra
2025-08-25 8:03 ` Finn Thain
2025-08-25 11:41 ` Peter Zijlstra
2025-08-27 7:17 ` Finn Thain
2025-08-27 11:54 ` Peter Zijlstra [this message]
2025-08-28 9:53 ` Finn Thain
2025-09-01 9:36 ` Peter Zijlstra
2025-09-01 9:40 ` Peter Zijlstra
2025-09-08 1:30 ` Finn Thain
2025-08-26 15:22 ` Eero Tamminen
2025-08-26 17:33 ` Lance Yang
2025-09-01 8:51 ` Geert Uytterhoeven
2025-09-01 15:12 ` Eero Tamminen
2025-09-06 11:50 ` David Laight
2025-08-27 2:45 ` Masami Hiramatsu
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=20250827115447.GR3289052@noisy.programming.kicks-ass.net \
--to=peterz@infradead.org \
--cc=akpm@linux-foundation.org \
--cc=fthain@linux-m68k.org \
--cc=geert@linux-m68k.org \
--cc=lance.yang@linux.dev \
--cc=linux-kernel@vger.kernel.org \
--cc=mhiramat@kernel.org \
--cc=oak@helsinkinet.fi \
--cc=stable@vger.kernel.org \
--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
all inboxes | Powered by JetHome®