On Fri, Apr 22, 2022 at 02:11:27AM +0000, Tian, Kevin wrote: > > mutex_lock(&device->dev_set->lock); > > - if (!--device->open_count && device->ops->close_device) > > + vfio_assert_device_open(device); > > + if (device->open_count == 1 && device->ops->close_device) > > device->ops->close_device(device); > > + device->open_count--; > > mutex_unlock(&device->dev_set->lock); > > Is it necessary to add assertion here? This is the only place to > decrement the counter and no similar assertion in other release()/ > put() functions. Necessary, no, but since we have it we may as well check it here. It is common to check that refcounts don't underflow. Jason