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