tag name | access_once (899f3be6dd0f9da704a0a0c9616f9da4b6295956) |
tag date | 2014-11-26 19:54:41 +0100 |
tagged by | Christian Borntraeger <borntraeger@de.ibm.com> |
tagged object | commit fbb7eba5b7... |
download | linux-access_once.tar.gz |
---|
As discussed on LKML http://marc.info/?i=54611D86.4040306%40de.ibm.com
ACCESS_ONCE might fail with specific compiler for non-scalar accesses.
Here is a set of patches to tackle that problem.
We first introduce READ_ONCE/ASSIGN_ONCE as suggested by Linus. These
wrappers will make all accesses via scalar wrappers and will also check
that accesses are <= the word size of the system.
The next changes will modify current users of ACCESS_ONCE on non-scalar
types to use READ_ONCE/ASSIGN_ONCE or barrier where necessary.
The 2nd to last patch will force ACCESS_ONCE to error-out if it is used
on non-scalar accesses.
The series is cross-compiled the resulting kernel with defconfig for
microblaze, m68k, alpha, s390,x86_64, i686, sparc, sparc64, mips,
ia64, arm and arm64.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.14 (GNU/Linux)
iQIcBAABAgAGBQJUdiIGAAoJEBF7vIC1phx8Vh4QAJxUXjY6YsLcD5Di1ADep3YC
0fhulv8WbK4mq8kCw7fqTLQXyG5n9nEjlzQ94iiPFKbonpxr7Y++ccpfpfRr0aiy
moE5XYpCS+/fRODpCPhZbcWvkOMG1xgGVMUgsxBL0d7d1Lt3AQhVgbzKMSH9C6AN
FJ6vhdZlmdqFRw+kORxR5FErb6xIxx0wtJLcHWAmDQAEZvnOR+/n1T6BK37UiMgX
tSLcTwpcbLuywk/I6kl66Z0kMcxEVBqnAMRBGw/T9JMajTse6/cJbTNXVOFyiAL4
9CTuBNeNCm1cvCvOq4Qk55CoWYOlw6IW7w9NcMCS1SDgDiqJgb1vMppgHBoyN4Ux
5xI4MnF0iziVIk1qKlMgUh7rNt7LNqf3/w697JQqno2/DEuy3ZJIQbOZbLx41+r1
239XsCXOnMb4n7PkNsYip4LMYXg6ZP5oY8RoGdkBoPeKGWX0VFYICwCuVG9BsnQd
EWOFSVIlGm28+KBCnCd9qXlWCrN0wbcpCbTOU+WbIC1eSaX2VzQuc07pzpS0sS86
8YZcb1othPH/TD7/aaajCz7CbYVr3JtlNvMbupDRotL1F+6Urh691O+vYDDADECK
B1dXVYNj/hnuc9JpLQTDtb4lscaJa29MM9xhjifqHrKDJ3iF67NT06FjMQ/OETjp
yK3dk7KbwkJGGh6cfrdQ
=lZPO
-----END PGP SIGNATURE-----