From: Nicholas Bellinger Date: Mon, 16 Jun 2014 20:25:54 +0000 (+0000) Subject: target: Fix left-over se_lun->lun_sep pointer OOPs X-Git-Tag: firefly_0821_release~3679^2~1949 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=69256ce37fa37dc92680579c4e4a73f15fe79d36;p=firefly-linux-kernel-4.4.55.git target: Fix left-over se_lun->lun_sep pointer OOPs commit 83ff42fcce070801a3aa1cd6a3269d7426271a8d upstream. This patch fixes a left-over se_lun->lun_sep pointer OOPs when one of the /sys/kernel/config/target/$FABRIC/$WWPN/$TPGT/lun/$LUN/alua* attributes is accessed after the $DEVICE symlink has been removed. To address this bug, go ahead and clear se_lun->lun_sep memory in core_dev_unexport(), so that the existing checks for show/store ALUA attributes in target_core_fabric_configfs.c work as expected. Reported-by: Sebastian Herbszt Tested-by: Sebastian Herbszt Signed-off-by: Nicholas Bellinger Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/target/target_core_device.c b/drivers/target/target_core_device.c index 8032917b6636..68398753eb82 100644 --- a/drivers/target/target_core_device.c +++ b/drivers/target/target_core_device.c @@ -614,6 +614,7 @@ void core_dev_unexport( dev->export_count--; spin_unlock(&hba->device_lock); + lun->lun_sep = NULL; lun->lun_se_dev = NULL; }