diff options
author | Alex Williamson <alex.williamson@redhat.com> | 2017-06-19 17:10:32 +0200 |
---|---|---|
committer | Alex Williamson <alex.williamson@redhat.com> | 2017-06-28 21:49:38 +0200 |
commit | 811642d8d8a82c0cce8dc2debfdaf23c5a144839 (patch) | |
tree | 8b64ef6d040f88ec61d6c12c82ebdb43843c3712 /drivers/hid/hid-lenovo.c | |
parent | vfio: Use ERR_CAST() instead of open coding it (diff) | |
download | linux-811642d8d8a82c0cce8dc2debfdaf23c5a144839.tar.xz linux-811642d8d8a82c0cce8dc2debfdaf23c5a144839.zip |
vfio: Fix group release deadlock
If vfio_iommu_group_notifier() acquires a group reference and that
reference becomes the last reference to the group, then vfio_group_put
introduces a deadlock code path where we're trying to unregister from
the iommu notifier chain from within a callout of that chain. Use a
work_struct to release this reference asynchronously.
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Reviewed-by: Eric Auger <eric.auger@redhat.com>
Tested-by: Eric Auger <eric.auger@redhat.com>
Cc: stable@vger.kernel.org
Diffstat (limited to 'drivers/hid/hid-lenovo.c')
0 files changed, 0 insertions, 0 deletions