mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
thunderbolt: Keep XDomain reference during the lifetime of a service
This is needed because we release the service ID in tb_service_release() and the ID array is owned by the parent XDomain. Signed-off-by: Mika Westerberg <mika.westerberg@linux.intel.com>
This commit is contained in:
parent
f5cc545f59
commit
8b40609986
|
|
@ -1039,6 +1039,7 @@ static void tb_service_release(struct device *dev)
|
|||
ida_free(&xd->service_ids, svc->id);
|
||||
kfree(svc->key);
|
||||
kfree(svc);
|
||||
tb_xdomain_put(xd);
|
||||
}
|
||||
|
||||
const struct device_type tb_service_type = {
|
||||
|
|
@ -1147,7 +1148,7 @@ static void enumerate_services(struct tb_xdomain *xd)
|
|||
svc->id = id;
|
||||
svc->dev.bus = &tb_bus_type;
|
||||
svc->dev.type = &tb_service_type;
|
||||
svc->dev.parent = &xd->dev;
|
||||
svc->dev.parent = get_device(&xd->dev);
|
||||
dev_set_name(&svc->dev, "%s.%d", dev_name(&xd->dev), svc->id);
|
||||
|
||||
tb_service_debugfs_init(svc);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user