Skip to content

Commit

Permalink
xen/pvcalls: Fix a check in pvcalls_front_remove()
Browse files Browse the repository at this point in the history
bedata->ref can't be less than zero because it's unsigned.  This affects
certain error paths in probe.  We first set ->ref = -1 and then we set
it to a valid value later.

Fixes: 2196819 ("xen/pvcalls: connect to the backend")
Signed-off-by: Dan Carpenter <[email protected]>
Reviewed-by: Juergen Gross <[email protected]>
Reviewed-by: Stefano Stabellini <[email protected]>
Signed-off-by: Boris Ostrovsky <[email protected]>
  • Loading branch information
Dan Carpenter authored and Boris Ostrovsky committed Dec 6, 2017
1 parent 8c71fa8 commit 1ab134c
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/xen/pvcalls-front.c
Original file line number Diff line number Diff line change
Expand Up @@ -1103,7 +1103,7 @@ static int pvcalls_front_remove(struct xenbus_device *dev)
kfree(map);
}
}
if (bedata->ref >= 0)
if (bedata->ref != -1)
gnttab_end_foreign_access(bedata->ref, 0, 0);
kfree(bedata->ring.sring);
kfree(bedata);
Expand Down

0 comments on commit 1ab134c

Please sign in to comment.