Staging: vme: bridges: Add missing unlocks
Add a spin_unlock and mutex_unlock missing on the error path. The semantic match that finds this problem is as follows: (http://coccinelle.lip6.fr/) // <smpl> @@ expression E1; @@ * spin_lock(E1,...); <+... when != E1 if (...) { ... when != E1 * return ...; } ...+> * spin_unlock(E1,...); // </smpl> Signed-off-by: Julia Lawall <julia@diku.dk> Signed-off-by: Martyn Welch <martyn.welch@ge.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
parent
45f9f01896
commit
7c0ace5488
|
@ -900,7 +900,8 @@ unsigned int ca91cx42_master_rmw(struct vme_master_resource *image,
|
|||
/* Address must be 4-byte aligned */
|
||||
if (pci_addr & 0x3) {
|
||||
dev_err(dev, "RMW Address not 4-byte aligned\n");
|
||||
return -EINVAL;
|
||||
result = -EINVAL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
/* Ensure RMW Disabled whilst configuring */
|
||||
|
@ -921,6 +922,7 @@ unsigned int ca91cx42_master_rmw(struct vme_master_resource *image,
|
|||
/* Disable RMW */
|
||||
iowrite32(0, bridge->base + SCYC_CTL);
|
||||
|
||||
out:
|
||||
spin_unlock(&(image->lock));
|
||||
|
||||
mutex_unlock(&(bridge->vme_rmw));
|
||||
|
|
Loading…
Reference in New Issue