Hi,

Just wondering the pmem struct device vs gendisk lifetimes.. from 
pmem_attach_disk():

        device_add_disk(dev, disk);
        devm_add_action_or_reset(dev, pmem_release_disk, disk);


where:
static void pmem_release_disk(void *disk)
{
        del_gendisk(disk);
        put_disk(disk);
}


but device_add_disk() makes disk pin dev (as a parent), and it's unpinned by 
del_gendisk()
which is called when dev is released, but it's not because of this circular 
dependency?

--Mika

Reply via email to