Re: [PATCH scsi-misc-2.6 07/08] scsi: remove bogus {get|put}_device() calls

Tejun Heo
2005-03-23T09:15:11Z

Hi,

James Bottomley wrote:
> On Wed, 2005-03-23 at 11:14 +0900, Tejun Heo wrote:
>
>> So, basically, SCSI high-level object (scsi_disk) and
>> mid-level object (scsi_device) are reference counted by users,
>> not the requests they submit. Reference count cannot go zero
>> with active users and users cannot access the object once the
>> reference count reaches zero.
>
>
> Actually, no. Unfortunately we still have some fire and forget APIs, so
> the contention that we always have an open refcounted descriptor isn't
> always true.

Yeap, you're right. So, what we have is

* All high-level users have open access to the scsi high-level
object on issueing requests, but may close it before its requests
complete.
* All mid-layer users do get_device() before submitting requests,
but may put_device() before its requests complete.

Thanks for pointing that out. :-)

--
tejun