rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules
authorPaul E. McKenney <paulmck@linux.vnet.ibm.com>
Thu, 7 Dec 2017 17:40:38 +0000 (09:40 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 16 Feb 2018 19:23:11 +0000 (20:23 +0100)
commitce6faf10fd6544febcf5c3efe453193def873c60
treead92adc000a6d5bed88d1125a805a1e5e979c1c3
parentc561093ed6843684690436dea034af53b462cfe5
rcu: Export init_rcu_head() and destroy_rcu_head() to GPL modules

commit 156baec39732f025dc778e00da95fc10d6e45885 upstream.

Use of init_rcu_head() and destroy_rcu_head() from modules results in
the following build-time error with CONFIG_DEBUG_OBJECTS_RCU_HEAD=y:

ERROR: "init_rcu_head" [drivers/scsi/scsi_mod.ko] undefined!
ERROR: "destroy_rcu_head" [drivers/scsi/scsi_mod.ko] undefined!

This commit therefore adds EXPORT_SYMBOL_GPL() for each to allow them to
be used by GPL-licensed kernel modules.

Reported-by: Bart Van Assche <Bart.VanAssche@wdc.com>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
kernel/rcu/update.c