Removal of NWFPE in its entirety, and VFP emulation code
Nicolas Pitre
nico at fluxnic.net
Wed Apr 10 13:30:35 EDT 2013
On Wed, 10 Apr 2013, Russell King - ARM Linux wrote:
> I have just committed a patch to remove the arch/arm/nwfpe code from
> the kernel, and the VFP code emulating the FP operations.
>
> This I have done after it has been brought to my attention by the OSADL's
> GPL-violations project that the license for the softfloat library is
> incompatible with GPLv2. This is because the FSF have ruled that
> indemnification clauses consitute an "additional restriction" which is
> incompatible with the GPLv2 section 6. NWFPE contains the softfloat
> library, and VFP's emulation code is a derivative of softfloat.
>
> This will be very disruptive for ARMv4 and ARMv5 CPUs, which will no
> longer be able to run userspace with NWFPE support removed. A possible
> solution there is to resurrect FASTFPE support and merge that into
> mainline in place of NWFPE. FASTFPE's hooks are all present in the
> kernel, and it should just be a case of adding the FASTFPE code.
> However, FASTFPE is probably lacking GDB and signal stack support.
> (FastFPE's per-thread workspace is different from NWFPE.)
A point worth mentioning is the EABI availability since 2006 which moved
away from FPA completely. A soft-float library in user space is used in
that case. Major ARM binary producers including all ARM distros moved
to EABI with user space soft-float since then as it is order of
magnitude faster than FPA emulation. So 99.99% of ARMv4 and ARMv5 users
are unlikely to be affected.
So another option here might imply deprecating OABI support entirely,
given that it is useless without FPA and people keeping current with the
latest kernel are very likely to already use EABI user space.
Nicolas
More information about the linux-arm-kernel
mailing list