mirror of
https://github.com/torvalds/linux.git
synced 2026-09-01 13:39:03 +02:00
Pull READ/WRITE_ONCE rework from Will Deacon:
"This the READ_ONCE rework I've been working on for a while, which
bumps the minimum GCC version and improves code-gen on arm64 when
stack protector is enabled"
[ Side note: I'm _really_ tempted to raise the minimum gcc version to
4.9, so that we can just say that we require _Generic() support.
That would allow us to more cleanly handle a lot of the cases where we
depend on very complex macros with 'sizeof' or __builtin_choose_expr()
with __builtin_types_compatible_p() etc.
This branch has a workaround for sparse not handling _Generic(),
either, but that was already fixed in the sparse development branch,
so it's really just gcc-4.9 that we'd require. - Linus ]
* 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux:
compiler_types.h: Use unoptimized __unqual_scalar_typeof for sparse
compiler_types.h: Optimize __unqual_scalar_typeof compilation time
compiler.h: Enforce that READ_ONCE_NOCHECK() access size is sizeof(long)
compiler-types.h: Include naked type in __pick_integer_type() match
READ_ONCE: Fix comment describing 2x32-bit atomicity
gcov: Remove old GCC 3.4 support
arm64: barrier: Use '__unqual_scalar_typeof' for acquire/release macros
locking/barriers: Use '__unqual_scalar_typeof' for load-acquire macros
READ_ONCE: Drop pointer qualifiers when reading from scalar types
READ_ONCE: Enforce atomicity for {READ,WRITE}_ONCE() memory accesses
READ_ONCE: Simplify implementations of {READ,WRITE}_ONCE()
arm64: csum: Disable KASAN for do_csum()
fault_inject: Don't rely on "return value" from WRITE_ONCE()
net: tls: Avoid assigning 'const' pointer to non-const pointer
netfilter: Avoid assigning 'const' pointer to non-const pointer
compiler/gcc: Raise minimum GCC version for kernel builds to 4.8
|
||
|---|---|---|
| .. | ||
| boot | ||
| common | ||
| configs | ||
| crypto | ||
| include | ||
| kernel | ||
| lib | ||
| mach-actions | ||
| mach-alpine | ||
| mach-artpec | ||
| mach-asm9260 | ||
| mach-aspeed | ||
| mach-at91 | ||
| mach-axxia | ||
| mach-bcm | ||
| mach-berlin | ||
| mach-clps711x | ||
| mach-cns3xxx | ||
| mach-davinci | ||
| mach-digicolor | ||
| mach-dove | ||
| mach-ebsa110 | ||
| mach-efm32 | ||
| mach-ep93xx | ||
| mach-exynos | ||
| mach-footbridge | ||
| mach-gemini | ||
| mach-highbank | ||
| mach-hisi | ||
| mach-imx | ||
| mach-integrator | ||
| mach-iop32x | ||
| mach-ixp4xx | ||
| mach-keystone | ||
| mach-lpc18xx | ||
| mach-lpc32xx | ||
| mach-mediatek | ||
| mach-meson | ||
| mach-milbeaut | ||
| mach-mmp | ||
| mach-moxart | ||
| mach-mv78xx0 | ||
| mach-mvebu | ||
| mach-mxs | ||
| mach-nomadik | ||
| mach-npcm | ||
| mach-nspire | ||
| mach-omap1 | ||
| mach-omap2 | ||
| mach-orion5x | ||
| mach-oxnas | ||
| mach-picoxcell | ||
| mach-prima2 | ||
| mach-pxa | ||
| mach-qcom | ||
| mach-rda | ||
| mach-realtek | ||
| mach-realview | ||
| mach-rockchip | ||
| mach-rpc | ||
| mach-s3c24xx | ||
| mach-s3c64xx | ||
| mach-s5pv210 | ||
| mach-sa1100 | ||
| mach-shmobile | ||
| mach-socfpga | ||
| mach-spear | ||
| mach-sti | ||
| mach-stm32 | ||
| mach-sunxi | ||
| mach-tango | ||
| mach-tegra | ||
| mach-u300 | ||
| mach-uniphier | ||
| mach-ux500 | ||
| mach-versatile | ||
| mach-vexpress | ||
| mach-vt8500 | ||
| mach-zx | ||
| mach-zynq | ||
| mm | ||
| net | ||
| nwfpe | ||
| oprofile | ||
| plat-omap | ||
| plat-orion | ||
| plat-pxa | ||
| plat-samsung | ||
| plat-versatile | ||
| probes | ||
| tools | ||
| vdso | ||
| vfp | ||
| xen | ||
| Kconfig | ||
| Kconfig-nommu | ||
| Kconfig.debug | ||
| Makefile | ||