linux-m68k.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Arnd Bergmann" <arnd@arndb.de>
To: "Finn Thain" <fthain@linux-m68k.org>,
	"Peter Zijlstra" <peterz@infradead.org>,
	"Will Deacon" <will@kernel.org>
Cc: "Andrew Morton" <akpm@linux-foundation.org>,
	"Boqun Feng" <boqun.feng@gmail.com>,
	"Jonathan Corbet" <corbet@lwn.net>,
	"Mark Rutland" <mark.rutland@arm.com>,
	linux-kernel@vger.kernel.org,
	Linux-Arch <linux-arch@vger.kernel.org>,
	"Geert Uytterhoeven" <geert@linux-m68k.org>,
	linux-m68k@vger.kernel.org, "Lance Yang" <lance.yang@linux.dev>
Subject: Re: [RFC v2 2/3] atomic: Specify alignment for atomic_t and atomic64_t
Date: Mon, 15 Sep 2025 09:35:08 +0200	[thread overview]
Message-ID: <f1f95870-9ef1-42e8-bb74-b7120820028e@app.fastmail.com> (raw)
In-Reply-To: <abf2bf114abfc171294895b63cd00af475350dba.1757810729.git.fthain@linux-m68k.org>

On Sun, Sep 14, 2025, at 02:45, Finn Thain wrote:
> index 100d24b02e52..7ae82ac17645 100644
> --- a/include/asm-generic/atomic64.h
> +++ b/include/asm-generic/atomic64.h
> @@ -10,7 +10,7 @@
>  #include <linux/types.h>
> 
>  typedef struct {
> -	s64 counter;
> +	s64 counter __aligned(sizeof(long));
>  } atomic64_t;

Why is this not aligned to 8 bytes? I checked all supported architectures
and found that arc, csky, m68k, microblaze, openrisc, sh and x86-32
use a smaller alignment by default, but arc and x86-32 override it
to 8 bytes already. x86 changed it back in 2009 with commit
bbf2a330d92c ("x86: atomic64: The atomic64_t data type should be 8
bytes aligned on 32-bit too"), and arc uses the same one.

Changing csky, m68k, microblaze, openrisc and sh to use the same
alignment as all others is probably less risky in the long run in
case anything relies on that the same way that code expects native
alignment on atomic_t.

     Arnd

  parent reply	other threads:[~2025-09-15  7:35 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-09-14  0:45 [RFC v2 0/3] Align atomic storage Finn Thain
2025-09-14  0:45 ` [RFC v2 2/3] atomic: Specify alignment for atomic_t and atomic64_t Finn Thain
2025-09-15  7:13   ` Geert Uytterhoeven
2025-09-15  7:35   ` Arnd Bergmann [this message]
2025-09-15  8:06     ` Peter Zijlstra
2025-09-15  9:26     ` Finn Thain
2025-09-15  9:29       ` Arnd Bergmann
2025-09-22  7:06   ` Geert Uytterhoeven
2025-09-22  8:16     ` Finn Thain
2025-09-22  9:29       ` Geert Uytterhoeven
2025-09-22 15:21       ` Arnd Bergmann
2025-09-23  6:28         ` Finn Thain
2025-09-23  6:41           ` Arnd Bergmann
2025-09-23  8:05             ` Finn Thain
2025-09-23 19:11               ` Arnd Bergmann
2025-09-30  2:18           ` Finn Thain
2025-09-30  6:35             ` Arnd Bergmann
2025-10-01  1:03               ` Finn Thain
2025-10-01  6:44                 ` Arnd Bergmann
2025-10-06  9:25                   ` Finn Thain
2025-10-06  9:25               ` Finn Thain
2025-10-06 10:07                 ` Arnd Bergmann
2025-10-06 10:22                   ` Peter Zijlstra
2025-10-06 11:09                     ` Arnd Bergmann
2025-10-06  9:37               ` Peter Zijlstra
2025-09-30  7:41             ` Geert Uytterhoeven
2025-10-01  1:46               ` Finn Thain
2025-10-01  7:08                 ` Geert Uytterhoeven
2025-09-14  0:45 ` [RFC v2 1/3] documentation: Discourage alignment assumptions Finn Thain
2025-09-14  0:45 ` [RFC v2 3/3] atomic: Add alignment check to instrumented atomic operations Finn Thain
2025-09-15  8:00   ` Peter Zijlstra
2025-09-15  9:38     ` Finn Thain
2025-09-15 10:06       ` Peter Zijlstra
2025-09-15 10:37         ` Finn Thain
2025-09-15 11:20           ` Arnd Bergmann
2025-09-16  0:16             ` Finn Thain
2025-09-16 10:10               ` Geert Uytterhoeven
2025-09-17  1:23                 ` Finn Thain
2025-09-16 12:37               ` Arnd Bergmann
2025-09-16 21:38                 ` Brad Boyer
2025-09-17 16:54                   ` Andreas Schwab
2025-09-17  2:14                 ` Finn Thain
2025-09-22 15:49                   ` Arnd Bergmann
2025-09-23  6:39                     ` Finn Thain

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=f1f95870-9ef1-42e8-bb74-b7120820028e@app.fastmail.com \
    --to=arnd@arndb.de \
    --cc=akpm@linux-foundation.org \
    --cc=boqun.feng@gmail.com \
    --cc=corbet@lwn.net \
    --cc=fthain@linux-m68k.org \
    --cc=geert@linux-m68k.org \
    --cc=lance.yang@linux.dev \
    --cc=linux-arch@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-m68k@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=peterz@infradead.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;
as well as URLs for NNTP newsgroup(s).