Linus Torvalds
4152d146ee
Merge branch 'rwonce/rework' of git://git.kernel.org/pub/scm/linux/kernel/git/will/linux
...
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
2020-06-10 14:46:54 -07:00
..
2020-05-25 20:39:14 +02:00
2020-04-27 02:07:40 -04:00
2020-04-15 21:36:41 +01:00
2020-04-30 12:56:38 -07:00
2020-04-09 00:12:48 +09:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-07-16 13:16:59 +02:00
2019-07-16 13:16:59 +02:00
2020-06-01 11:46:30 -07:00
2019-10-26 12:36:42 +02:00
2019-09-13 12:33:06 +02:00
2019-12-17 22:59:31 +01:00
2019-09-02 11:20:17 -07:00
2019-07-16 13:17:00 +02:00
2019-07-16 13:16:59 +02:00
2019-06-19 17:09:52 +02:00
2019-09-13 12:33:06 +02:00
2019-07-16 13:16:59 +02:00
2019-08-27 18:07:03 +02:00
2019-05-30 11:26:32 -07:00
2020-05-27 22:20:34 +02:00
2020-05-27 13:39:08 +02:00
2020-01-08 23:31:22 +01:00
2019-06-19 17:09:55 +02:00
2019-07-16 13:17:00 +02:00
2020-05-27 22:20:34 +02:00
2020-05-27 22:20:34 +02:00
2020-01-24 18:26:53 +01:00
2019-08-13 12:08:48 +02:00
2020-02-17 10:55:14 +01:00
2019-05-30 14:18:18 -07:00
2019-07-16 13:16:59 +02:00
2019-05-31 18:02:45 +02:00
2019-07-16 13:16:59 +02:00
2019-05-30 11:26:32 -07:00
2020-05-01 17:02:27 -07:00
2019-07-16 13:16:59 +02:00
2019-09-13 12:33:06 +02:00
2019-05-24 17:37:51 +02:00
2019-09-10 22:44:29 +02:00
2020-06-01 11:41:12 -07:00
2019-11-15 23:44:47 +01:00
2020-03-30 19:40:46 -07:00
2020-06-01 11:41:50 -07:00
2020-05-27 22:20:34 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-04-27 02:07:40 -04:00
2019-07-16 13:16:59 +02:00
2019-09-13 12:33:06 +02:00
2019-07-16 13:16:59 +02:00
2019-06-22 08:59:24 -04:00
2019-07-16 13:16:59 +02:00
2019-04-11 20:59:34 +02:00
2020-04-26 23:57:18 +02:00
2019-06-22 08:59:24 -04:00
2019-07-16 13:16:59 +02:00
2019-07-16 13:16:59 +02:00
2020-03-29 16:28:29 +02:00
2017-11-02 11:10:55 +01:00
2020-03-04 02:27:18 +01:00
2020-05-27 22:20:35 +02:00
2019-07-05 21:34:47 +02:00
2020-06-01 11:41:50 -07:00
2019-06-19 17:09:55 +02:00
2020-03-15 15:20:16 +01:00
2020-05-25 20:39:14 +02:00
2019-05-24 17:37:51 +02:00
2019-08-26 11:06:07 +02:00
2020-04-29 21:17:57 +02:00
2020-03-29 16:28:29 +02:00
2020-01-24 20:54:29 +01:00
2020-03-15 15:20:16 +01:00
2019-08-26 11:01:00 +02:00
2020-03-18 16:35:48 -07:00
2020-03-06 18:00:43 +01:00
2019-04-08 23:01:42 +02:00
2019-12-09 13:14:03 +01:00
2019-06-19 17:09:55 +02:00
2019-10-01 18:42:15 +02:00
2019-06-19 17:09:55 +02:00
2019-12-09 10:36:44 -08:00
2019-09-10 22:44:29 +02:00
2020-03-30 02:05:38 +02:00
2020-03-30 21:17:53 +02:00
2019-06-19 17:09:55 +02:00
2019-09-03 22:53:56 +02:00
2019-06-19 17:09:55 +02:00
2020-01-05 10:06:22 +01:00
2020-03-25 12:24:33 -07:00
2019-07-16 13:17:03 +02:00
2019-08-13 12:10:01 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-04-05 23:26:36 +02:00
2019-12-09 10:36:44 -08:00
2019-12-26 17:41:34 +01:00
2020-04-28 00:53:54 +02:00
2019-06-19 17:09:55 +02:00
2019-06-05 17:37:15 +02:00
2020-01-18 21:18:41 +01:00
2020-03-04 02:28:17 +01:00
2019-06-19 17:09:55 +02:00
2019-09-03 19:05:00 +02:00
2019-12-09 13:14:03 +01:00
2019-12-09 10:36:44 -08:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-04-05 23:26:36 +02:00
2020-03-15 15:20:16 +01:00
2020-03-15 15:27:46 +01:00
2020-04-09 00:12:48 +09:00
2020-04-09 00:12:48 +09:00
2020-03-15 15:27:46 +01:00
2020-05-12 13:19:34 +02:00
2019-09-02 23:20:59 +02:00
2019-09-10 22:35:37 +02:00
2019-12-26 13:11:40 -08:00
2020-03-15 15:20:16 +01:00
2019-06-19 17:09:55 +02:00
2019-06-28 19:30:50 +02:00
2020-04-28 18:11:36 -04:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2018-02-14 21:05:38 +01:00
2019-06-19 17:09:55 +02:00
2019-09-13 12:33:06 +02:00
2019-05-21 11:28:45 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2020-03-15 15:20:16 +01:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2019-11-05 14:03:11 -08:00
2020-04-05 23:26:37 +02:00
2019-05-30 11:26:32 -07:00
2019-06-25 01:32:59 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-05-30 11:26:38 -07:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-08-19 09:34:21 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-21 11:28:45 +02:00
2019-06-25 01:32:59 +02:00
2019-09-13 12:32:48 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2019-06-19 17:09:55 +02:00
2019-12-09 10:36:44 -08:00
2019-06-19 17:09:55 +02:00
2020-03-15 15:20:16 +01:00
2019-06-19 17:09:55 +02:00
2017-11-02 11:10:55 +01:00
2019-05-21 10:50:45 +02:00
2020-03-15 15:20:16 +01:00
2019-08-13 12:14:26 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-19 17:09:55 +02:00
2019-06-22 08:59:24 -04:00
2019-06-22 08:59:24 -04:00
2019-05-21 10:50:45 +02:00
2019-05-21 11:28:40 +02:00
2019-11-15 23:44:45 +01:00
2019-06-19 17:09:55 +02:00
2019-05-21 10:50:45 +02:00
2019-05-21 10:50:45 +02:00