2015-11-11 05:53:14

by Ira Weiny

[permalink] [raw]
Subject: Re: [BUG] IB/hfi1: might sleep under spinlock in hfi1_ioctl()

On Fri, Oct 30, 2015 at 07:58:18PM -0400, ira. weiny wrote:
> On Sat, Oct 31, 2015 at 12:32:29AM +0300, Alexey Khoroshilov wrote:
> > Hello,
> >
> > hfi1_ioctl() contains many calls to might sleep functions with
> > dd->hfi1_snoop.snoop_lock spinlock held (for example, access_ok,
> > copy_from_user, kzalloc(GFP_KERNEL), etc.).
> >
> > Should dd->hfi1_snoop.snoop_lock be acquired just before updating state?
>
> I believe you are correct.
>
> I am currently in the process of pushing fixes to the staging tree.
>
> We have a patch which fixes this queued up but it depends on at least one other
> patch in my queue.
>
> I will do my best to get this submitted soon.

I have just posted a series which addresses this problem as well as doing
general clean up on hfi1_ioctl. The specific fix is contained in this patch.

[PATCH 7/8] staging/rdma/hfi1: Reduce snoop locking scope in IOCTL handler.

Thanks for the report,
Ira