rcu: Tighten up __call_rcu() rcu_head alignment check
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Tue, 23 Aug 2016 13:51:47 +0000 (06:51 -0700)
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Mon, 14 Nov 2016 18:46:08 +0000 (10:46 -0800)
commitb8f2ed538477d9ab803c6458f497df1b1c6cf4ce
tree60ba4899c6b8c4dc48a727209a94435c21980647
parent1001354ca34179f3db924eb66672442a173147dc
rcu: Tighten up __call_rcu() rcu_head alignment check

Commit 720abae3d68ae ("rcu: force alignment on struct
callback_head/rcu_head") forced the rcu_head (AKA callback_head)
structure's alignment to pointer size, that is, to 4-byte boundaries on
32-bit systems and to 8-byte boundaries on 64-bit systems.  This
commit therefore checks for this same alignment in __call_rcu(),
which used to contain a looser check for two-byte alignment.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Tested-by: Geert Uytterhoeven <geert@linux-m68k.org>
Acked-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Reviewed-by: Josh Triplett <josh@joshtriplett.org>
kernel/rcu/tree.c