OSDN Git Service

staging: unisys: visorhba: fix s-Par to boot with option CONFIG_VMAP_STACK set to y
authorSameer Wadgaonkar <sameer.wadgaonkar@unisys.com>
Tue, 18 Apr 2017 20:55:25 +0000 (16:55 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 24 Mar 2018 10:00:17 +0000 (11:00 +0100)
commit6806bc0a63ef0797f429b0284f85f1c277d709be
tree0e6bcbc62ffb3688b1c17834d025589813e17f2d
parentccda7d225dc55e8518a8aad974885ea3f0456a65
staging: unisys: visorhba: fix s-Par to boot with option CONFIG_VMAP_STACK set to y

[ Upstream commit 3c2bf0bd08123f3497bd3e84bd9088c937b0cb40 ]

The root issue is that we are not allowed to have items on the
stack being passed to "DMA" like operations. In this case we have
a vmcall and an inline completion of scsi command.

This patch fixes the issue by moving the variables on stack in
do_scsi_nolinuxstat() to heap memory.

Signed-off-by: Sameer Wadgaonkar <sameer.wadgaonkar@unisys.com>
Signed-off-by: David Kershner <david.kershner@unisys.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Sasha Levin <alexander.levin@microsoft.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/unisys/visorhba/visorhba_main.c