Re: ABI change for device drivers using future AVX instruction set

From: Arjan van de Ven
Date: Wed Jun 25 2008 - 16:09:31 EST


On Wed, 25 Jun 2008 21:54:04 +0200
Agner Fog <agner@xxxxxxxxx> wrote:

> Arjan van de Ven wrote:
> >Let me repeat this loud and clear:
> >It is not allowed to use floating point, SSE of AVX in device
> >drivers.
>
> Thank you for a clear answer. Re-reading the ABI:
> >A.2.4 Miscellaneous Remarks
> >Linux Kernel code is not allowed to change the x87 and SSE units.
> >If
> those are
> >changed by kernel code, they have to be restored properly before
> sleeping or leaving
> >the kernel. On preemptive kernels also more precautions may be
> >needed.
>
> This states your point, but certainly not "loud and clear" :-)
>
> This ABI statement has to be amended, however, because it is allowed

the linux kernel policy is loud and clear; this is more an OS policy as
it is a platform ABI issue. We as linux do not allow this (with the
small footnote around the raid stuff, but that has specific very
careful use). In addition, you really aren't allowed to use floating
point in the kernel period as concept, if you need it you very likely
are doing something wrong.


--
If you want to reach me at my work email, use arjan@xxxxxxxxxxxxxxx
For development, discussion and tips for power savings,
visit http://www.lesswatts.org
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/