On 9/25/19 1:50 PM, Danil Kipnis wrote: > On Wed, Sep 25, 2019 at 8:55 PM Bart Van Assche <bvanassche@xxxxxxx> wrote: >> There is plenty of code under drivers/base that calls get_device() and >> put_device(). Are you sure that none of the code under drivers/base will >> ever call get_device() and put_device() for the ibtrs client device? > > You mean how could multiple kernel modules share the same ibtrs > session...? I really never thought that far... I meant something else: device_register() registers struct device instances in multiple lists. The driver core may decide to iterate over these lists and to call get_device() / put_device() on the devices it finds in these lists. Bart.