mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: "Arnd Bergmann" <arnd@arndb.de>
To: "André Almeida" <andrealmeid@igalia.com>,
	"Masami Hiramatsu" <mhiramat@kernel.org>
Cc: "Christian Brauner" <brauner@kernel.org>,
	linux-kernel@vger.kernel.org, linux-kbuild@vger.kernel.org,
	kernel-dev@igalia.com,
	"Thomas Bogendoerfer" <tsbogend@alpha.franken.de>,
	linux-alpha@vger.kernel.org, linux-s390@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, soc@lists.linux.dev,
	linux-mips@vger.kernel.org, sparclinux@vger.kernel.org
Subject: Re: [PATCH v9 14/15] arm: Reorganize syscall table and separated the ABIs
Date: Thu, 12 Nov 2026 15:15:05 +0100	[thread overview]
Message-ID: <e57b6554-4a2a-44b0-adca-ee4ca5050e85@app.fastmail.com> (raw)
In-Reply-To: <20261105-tonyk-syscall_table-v9-14-8d1275885d9c@igalia.com>

On Thu, Nov 5, 2026, at 21:05, André Almeida wrote:
> arm has three ABIs: EABI, OABI and OABI with compat (OABIC). Those ABIs
> shares almost every syscall, but have a few exceptions: some syscalls only
> have an entry point for OABI/C (e.g. sys_alarm), and some syscalls have a
> special entry point for OABIC (e.g. sys_oabi_pwrite64).
>
> Currently, the syscall table uses the compat column to specify when such
> OABI syscall needs an OABIC entry point. However, this makes tricky to move
> arm to use the common syscall table: arm doesn't use the compat entry
> points for time64 (e.g. compat_sys_pselect6_time64) and rely on the normal
> entry point (e.g. sys_pselect6). Given that the build system will generate
> the same __SYSCALL_WITH_COMPAT() macro for the whole table, this would
> create inconsistency where some syscalls would point to the wrong entry.
>
> To avoid this problem and prepare the architecture to move to the common
> table, separate explicitly the ABIs in the local syscall table and drop all
> entries for the compat column. Make sure that __SYSCALL_WITH_COMPAT()
> always points to the native option.
>
> Signed-off-by: André Almeida <andrealmeid@igalia.com>
> ---
> This patch was tested comparing the results of `$ strings
> arch/arm/kernel/entry-common.o` before and after this patch.

Aside from the two mistakes that sashiko found, thsi looks fine.

Two related points though:

 - hopefully we can expedite dropping OABI support now, as there was
   a report today about how it has been broken for the past 5 years.

 - on top of this patch, it should be much easier to merge this file
   with the arm64 version of the arm eabi table. On the other hand,
   that can probably wait until OABI is actually gone.

      Arnd

  reply	other threads:[~2026-11-12 14:15 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-11-05 20:05 [PATCH v9 00/15] syscalls: Add a shared table for all archs André Almeida
2026-11-05 20:05 ` [PATCH v9 01/15] syscalls: Make --abis parsing more robust André Almeida
2026-11-12 14:05   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 02/15] syscalls: Create unified partial table for all archs André Almeida
2026-11-12 14:05   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 03/15] scripts/syscall.tbl: Use the common table André Almeida
2026-11-05 20:05 ` [PATCH v9 04/15] s390: Use the common syscall table André Almeida
2026-11-12 14:16   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 05/15] sparc: " André Almeida
2026-11-12 14:17   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 06/15] mips: Remove duplicated syscallnr.sh André Almeida
2026-11-12 14:29   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 07/15] mips: Get rid of custom mips ABIs for syscall tables André Almeida
2026-11-05 20:05 ` [PATCH v9 08/15] mips: Use the common syscall table André Almeida
2026-11-12 14:19   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 09/15] syscalls: Add an option for offsetting the common table André Almeida
2026-11-12 14:07   ` Arnd Bergmann
2026-11-12 14:37     ` André Almeida
2026-11-12 15:08       ` Arnd Bergmann
2026-11-12 15:10         ` André Almeida
2026-11-12 15:13           ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 10/15] alpha: Define entry point for set_mempolicy_home_node syscall André Almeida
2026-11-11  7:40   ` Magnus Lindholm
2026-11-12 14:15   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 11/15] alpha: Remove alpha_ prefix from custom syscall entries André Almeida
2026-11-11  7:43   ` Magnus Lindholm
2026-11-12 15:13     ` André Almeida
2026-11-05 20:05 ` [PATCH v9 12/15] alpha: Use the common syscall table André Almeida
2026-11-11  7:51   ` Magnus Lindholm
2026-11-05 20:05 ` [PATCH v9 13/15] syscalls: Avoid matching substrings in the ABI parsing André Almeida
2026-11-12 14:04   ` Arnd Bergmann
2026-11-05 20:05 ` [PATCH v9 14/15] arm: Reorganize syscall table and separated the ABIs André Almeida
2026-11-12 14:15   ` Arnd Bergmann [this message]
2026-11-05 20:05 ` [PATCH v9 15/15] arm: Use common syscall table André Almeida

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=e57b6554-4a2a-44b0-adca-ee4ca5050e85@app.fastmail.com \
    --to=arnd@arndb.de \
    --cc=andrealmeid@igalia.com \
    --cc=brauner@kernel.org \
    --cc=kernel-dev@igalia.com \
    --cc=linux-alpha@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mips@vger.kernel.org \
    --cc=linux-s390@vger.kernel.org \
    --cc=mhiramat@kernel.org \
    --cc=soc@lists.linux.dev \
    --cc=sparclinux@vger.kernel.org \
    --cc=tsbogend@alpha.franken.de \
    /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®