Re: [PATCH 1/19] MUTEX: Introduce simple mutex implementation

Russell King
2005-12-14T10:46:57Z

On Tue, Dec 13, 2005 at 01:02:33AM -0800, Andrew Morton wrote:
> diff -puN arch/arm/kernel/asm-offsets.c~remove-gcc2-checks arch/arm/kernel/asm-offsets.c
> --- devel/arch/arm/kernel/asm-offsets.c~remove-gcc2-checks 2005-12-13 00:51:14.000000000 -0800
> +++ devel-akpm/arch/arm/kernel/asm-offsets.c 2005-12-13 00:53:27.000000000 -0800
> @@ -23,18 +23,13 @@
> #error Sorry, your compiler targets APCS-26 but this kernel requires APCS-32
> #endif
> /*
> - * GCC 2.95.1, 2.95.2: ignores register clobber list in asm().
> * GCC 3.0, 3.1: general bad code generation.
> * GCC 3.2.0: incorrect function argument offset calculation.
> * GCC 3.2.x: miscompiles NEW_AUX_ENT in fs/binfmt_elf.c
> * (http://gcc.gnu.org/PR8896) and incorrect structure
> * initialisation in fs/jffs2/erase.c
> */
> -#if __GNUC__ < 2 || \
> - (__GNUC__ == 2 && __GNUC_MINOR__ < 95) || \
> - (__GNUC__ == 2 && __GNUC_MINOR__ == 95 && __GNUC_PATCHLEVEL__ != 0 && \
> - __GNUC_PATCHLEVEL__ < 3) || \
> - (__GNUC__ == 3 && __GNUC_MINOR__ < 3)
> +#if __GNUC__ < 2 || (__GNUC__ == 3 && __GNUC_MINOR__ < 3)

Shouldn't this be:

+#if __GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 3)

?

> #error Your compiler is too buggy; it is known to miscompile kernels.
> #error Known good compilers: 2.95.3, 2.95.4, 2.96, 3.3

And this should also have the 2.95 and 2.96 stuff edited out.

--
Russell King
Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/
maintainer of: 2.6 Serial core