On Mon, Jun 29, 2020 at 2:30 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote: > A recent change to the Regulator consumer API (which this driver > utilises) add prototypes for the some suspend functions. These > functions require including header file include/linux/suspend.h. > > The following tree of includes affecting this driver will be > present: > > In file included from include/linux/elevator.h:6, > from include/linux/blkdev.h:288, > from include/linux/blk-cgroup.h:23, > from include/linux/writeback.h:14, > from include/linux/memcontrol.h:22, > from include/linux/swap.h:9, > from include/linux/suspend.h:5, > from include/linux/regulator/consumer.h:35, > from drivers/crypto/ux500/hash/hash_core.c:28: > > include/linux/elevator.h pulls in include/linux/hashtable.h which > contains its own version of hash_init(). This confuses the build > system and results in the following error (amongst others): > > drivers/crypto/ux500/hash/hash_core.c:1362:19: error: passing argument 1 of '__hash_init' from incompatible pointer type [-Werror=incompatible-pointer-types] > 1362 | return hash_init(req); > > Fix this by namespacing the local hash_init() such that the > source of confusion is removed. > > Cc: Linus Walleij <linus.walleij@xxxxxxxxxx> > Cc: Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> > Cc: David S. Miller <davem@xxxxxxxxxxxxx> > Cc: linux-crypto@xxxxxxxxxxxxxxx > Signed-off-by: Lee Jones <lee.jones@xxxxxxxxxx> This looks reasonable. Reviewed-by: Linus Walleij <linus.walleij@xxxxxxxxxx> Yours, Linus Walleij