aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/xen/xen-scsiback.c
diff options
context:
space:
mode:
authorJuergen Gross <jgross@suse.com>2016-02-08 09:30:18 -0500
committerDavid Vrabel <david.vrabel@citrix.com>2016-02-08 11:44:40 -0500
commitf285aa8db7cc4432c1a03f8b55ff34fe96317c11 (patch)
tree66a8e6ac3118ac726974bdc0ae04b9ea8a7f830b /drivers/xen/xen-scsiback.c
parenta4cdb556cae05cd3e7b602b3a44c01420c4e2258 (diff)
xen/scsiback: correct frontend counting
When adding a new frontend to xen-scsiback don't decrement the number of active frontends in case of no error. Doing so results in a failure when trying to remove the xen-pvscsi nexus even if no domain is using it. Signed-off-by: Juergen Gross <jgross@suse.com> Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com> Cc: stable@vger.kernel.org Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Diffstat (limited to 'drivers/xen/xen-scsiback.c')
-rw-r--r--drivers/xen/xen-scsiback.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/xen/xen-scsiback.c b/drivers/xen/xen-scsiback.c
index ad4eb1024d1f..51387d75c7bf 100644
--- a/drivers/xen/xen-scsiback.c
+++ b/drivers/xen/xen-scsiback.c
@@ -939,12 +939,12 @@ out:
939 spin_unlock_irqrestore(&info->v2p_lock, flags); 939 spin_unlock_irqrestore(&info->v2p_lock, flags);
940 940
941out_free: 941out_free:
942 mutex_lock(&tpg->tv_tpg_mutex); 942 if (err) {
943 tpg->tv_tpg_fe_count--; 943 mutex_lock(&tpg->tv_tpg_mutex);
944 mutex_unlock(&tpg->tv_tpg_mutex); 944 tpg->tv_tpg_fe_count--;
945 945 mutex_unlock(&tpg->tv_tpg_mutex);
946 if (err)
947 kfree(new); 946 kfree(new);
947 }
948 948
949 return err; 949 return err;
950} 950}