Peng Fan
9a4a9d8c34
iommu/arm-smmu: Correct group reference count
...
The basic flow for add a device:
arm_smmu_add_device
|->iommu_group_get_for_dev
|->iommu_group_get
return group; (1)
|->ops->device_group : Init/increase reference count to/by 1.
|->iommu_group_add_device : Increase reference count by 1.
return group (2)
|->return 0;
Since we are adding one device, the flow is (2) and the group reference
count will be increased by 2. So, we need to add iommu_group_put at the
end of arm_smmu_add_device to decrease the count by 1.
Also take the failure path into consideration when fail to add a device.
Signed-off-by: Peng Fan <van.freenix@gmail.com >
Cc: Will Deacon <will.deacon@arm.com >
Signed-off-by: Will Deacon <will.deacon@arm.com >
2015-12-17 12:05:33 +00:00
..
2015-11-12 11:50:33 -08:00
2015-11-13 20:35:54 -08:00
2015-11-12 11:50:33 -08:00
2015-11-13 09:24:40 -08:00
2015-11-10 18:11:41 -08:00
2015-11-10 15:00:03 -08:00
2015-11-12 20:38:04 +11:00
2015-11-12 15:26:39 -08:00
2015-11-15 09:10:53 -08:00
2015-11-06 17:50:42 -08:00
2015-11-12 11:50:33 -08:00
2015-11-12 11:50:33 -08:00
2015-11-10 10:05:17 -08:00
2015-10-30 01:16:16 -04:00
2015-11-06 14:22:15 -08:00
2015-11-11 10:21:34 -08:00
2015-11-10 15:00:03 -08:00
2015-10-29 15:20:25 -07:00
2015-11-06 14:22:15 -08:00
2015-11-13 09:12:38 -08:00
2015-11-07 12:49:27 -08:00
2015-10-30 16:10:40 +01:00
2015-11-04 16:24:33 +01:00
2015-11-10 15:00:03 -08:00
2015-11-13 20:04:17 -08:00
2015-11-10 11:58:25 -08:00
2015-11-06 17:50:42 -08:00
2015-11-05 13:15:12 -08:00
2015-11-13 20:35:54 -08:00
2015-11-13 21:41:14 -08:00
2015-12-17 12:05:33 +00:00
2015-11-15 09:10:53 -08:00
2015-11-04 21:35:12 -08:00
2015-11-05 13:15:12 -08:00
2015-11-07 10:40:46 -07:00
2015-11-04 14:03:04 +05:30
2015-10-29 09:02:16 +09:00
2015-11-10 17:23:49 -08:00
2015-11-10 16:32:11 -08:00
2015-11-10 15:00:03 -08:00
2015-11-12 07:06:18 -05:00
2015-11-06 14:22:15 -08:00
2015-11-13 20:04:17 -08:00
2015-11-05 13:15:12 -08:00
2015-11-10 16:35:06 -08:00
2015-11-13 20:04:17 -08:00
2015-11-10 18:11:41 -08:00
2015-11-08 16:24:43 -05:00
2015-11-12 09:55:23 -08:00
2015-11-11 09:36:57 -07:00
2015-11-12 11:50:33 -08:00
2015-11-10 16:32:11 -08:00
2015-11-12 11:50:33 -08:00
2015-11-04 14:47:13 -08:00
2015-11-09 17:44:24 -05:00
2015-11-02 12:59:12 -08:00
2015-11-13 21:53:18 -08:00
2015-11-06 10:23:50 -08:00
2015-11-11 09:16:10 -08:00
2015-11-05 13:15:12 -08:00
2015-11-10 10:01:21 -08:00
2015-11-07 10:40:46 -07:00
2015-11-13 20:35:54 -08:00
2015-11-10 15:00:03 -08:00
2015-11-04 11:02:16 +00:00
2015-11-04 22:15:15 -08:00
2015-11-10 17:23:49 -08:00
2015-11-13 20:35:54 -08:00
2015-11-11 19:52:39 -08:00
2015-11-06 14:22:15 -08:00
2015-11-13 20:35:54 -08:00
2015-11-04 21:50:37 -08:00
2015-11-13 17:05:32 -08:00
2015-11-13 20:04:17 -08:00
2015-11-10 10:00:09 -08:00
2015-11-04 22:15:15 -08:00
2015-11-05 12:28:15 -08:00
2015-11-10 10:11:12 -08:00
2015-11-13 20:04:17 -08:00
2015-11-04 22:15:15 -08:00
2015-11-04 22:15:15 -08:00