Messages in this thread | | | Date | Tue, 19 Oct 2021 09:57:34 -0700 | From | Jacob Pan <> | Subject | Re: [RFC 01/20] iommu/iommufd: Add /dev/iommu core |
| |
Hi Jason,
On Fri, 15 Oct 2021 08:18:07 -0300, Jason Gunthorpe <jgg@nvidia.com> wrote:
> On Fri, Oct 15, 2021 at 09:18:06AM +0000, Liu, Yi L wrote: > > > > Acquire from the xarray is > > > rcu_lock() > > > ioas = xa_load() > > > if (ioas) > > > if (down_read_trylock(&ioas->destroying_lock)) > > > > all good suggestions, will refine accordingly. Here destroying_lock is a > > rw_semaphore. right? Since down_read_trylock() accepts a rwsem. > > Yes, you probably need a sleeping lock > I am not following why we want a sleeping lock inside RCU protected section?
For ioas, do we really care about the stale data to choose rw_lock vs RCU? Destroying can be kfree_rcu? > Jason
Thanks,
Jacob
| |