diff options
author | Juergen Gross <jgross@suse.com> | 2016-02-08 09:30:18 -0500 |
---|---|---|
committer | David Vrabel <david.vrabel@citrix.com> | 2016-02-08 11:44:40 -0500 |
commit | f285aa8db7cc4432c1a03f8b55ff34fe96317c11 (patch) | |
tree | 66a8e6ac3118ac726974bdc0ae04b9ea8a7f830b /drivers/xen/xen-scsiback.c | |
parent | a4cdb556cae05cd3e7b602b3a44c01420c4e2258 (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.c | 10 |
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 | ||
941 | out_free: | 941 | out_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 | } |