Cleanup alloc_input_device(); you can directly set the reference count. Signed-off-by: K. Y. Srinivasan <kys@xxxxxxxxxxxxx> Signed-off-by: Haiyang Zhang <haiyangz@xxxxxxxxxxxxx> --- drivers/staging/hv/hv_mouse.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/drivers/staging/hv/hv_mouse.c b/drivers/staging/hv/hv_mouse.c index 092c0ff..38e31ae 100644 --- a/drivers/staging/hv/hv_mouse.c +++ b/drivers/staging/hv/hv_mouse.c @@ -186,7 +186,7 @@ static struct mousevsc_dev *alloc_input_device(struct hv_device *device) * Set to 2 to allow both inbound and outbound traffics * (ie get_input_device() and must_get_input_device()) to proceed. */ - atomic_cmpxchg(&input_dev->ref_count, 0, 2); + atomic_set(&input_dev->ref_count, 2); input_dev->device = device; hv_set_drvdata(device, input_dev); -- 1.7.4.1 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel