Re: Remove execution domain support

From: Andy Lutomirski
Date: Mon Apr 13 2015 - 21:21:58 EST

On 04/11/2015 01:47 PM, Richard Weinberger wrote:
A long time ago there was the idea to support different ABIs on Linux
Such that someone could use for example SCO UNIX binaries on Linux
without emulation. While the linux-abi project existed mostly as
out-of-tree patch it's core component, execution domains,
went mainline. An execution domain allows to specify mappings between
different ABIs, these mappings consist of signal, error, socket type,
socket options and addess familiy mappings.
Mainline has only support for signal mappings.
The signal mapping happens in the architecutre specific signal code.
Some archs support it, some not, most of them copy&pasted from i386.

While the mapping support is incomplete we have two in-kernel users of
execution domains.

1. RISC OS personality on ARM.
The Kconfig help message states that this feature is very experimental
and it is likely that it never worked as expected.
Russel is fine with the removal.

2. ia32 support on ia64.
This is a left over from:
commit 32974ad4907cdde6c9de612cd1b2ee0568fb9409 ([IA64] Remove COMPAT_IA32 support)
It registers a dummy Linux/x86 execdomain to make calls to
personality(PER_LINUX32) faster as the execution domain core code
would try to load a module.

As both users can be removed there is no user left and we can remove
execution domains support at all from the kernel.
The removal will make architecutre specific signal handling easier
and there is no need to keep execuction domains as this feature is
obviously incomplete and abandoned.

I like this.

FWIW, we recently removed restart_block from thread_info, so I'm not too worried about fallout from removing another field.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at