|
@@ -110,7 +110,7 @@ static struct urdev *urdev_alloc(struct ccw_device *cdev)
|
|
|
mutex_init(&urd->io_mutex);
|
|
|
init_waitqueue_head(&urd->wait);
|
|
|
spin_lock_init(&urd->open_lock);
|
|
|
- atomic_set(&urd->ref_count, 1);
|
|
|
+ refcount_set(&urd->ref_count, 1);
|
|
|
urd->cdev = cdev;
|
|
|
get_device(&cdev->dev);
|
|
|
return urd;
|
|
@@ -126,7 +126,7 @@ static void urdev_free(struct urdev *urd)
|
|
|
|
|
|
static void urdev_get(struct urdev *urd)
|
|
|
{
|
|
|
- atomic_inc(&urd->ref_count);
|
|
|
+ refcount_inc(&urd->ref_count);
|
|
|
}
|
|
|
|
|
|
static struct urdev *urdev_get_from_cdev(struct ccw_device *cdev)
|
|
@@ -159,7 +159,7 @@ static struct urdev *urdev_get_from_devno(u16 devno)
|
|
|
|
|
|
static void urdev_put(struct urdev *urd)
|
|
|
{
|
|
|
- if (atomic_dec_and_test(&urd->ref_count))
|
|
|
+ if (refcount_dec_and_test(&urd->ref_count))
|
|
|
urdev_free(urd);
|
|
|
}
|
|
|
|
|
@@ -945,7 +945,7 @@ static int ur_set_offline_force(struct ccw_device *cdev, int force)
|
|
|
rc = -EBUSY;
|
|
|
goto fail_urdev_put;
|
|
|
}
|
|
|
- if (!force && (atomic_read(&urd->ref_count) > 2)) {
|
|
|
+ if (!force && (refcount_read(&urd->ref_count) > 2)) {
|
|
|
/* There is still a user of urd (e.g. ur_open) */
|
|
|
TRACE("ur_set_offline: BUSY\n");
|
|
|
rc = -EBUSY;
|