Messages in this thread | | | From | "Bernard Metzler" <> | Date | Thu, 27 Feb 2020 16:21:21 +0000 | Subject | RE: possible deadlock in cma_netdev_callback |
| |
-----"Jason Gunthorpe" <jgg@ziepe.ca> wrote: -----
>To: "Bernard Metzler" <BMT@zurich.ibm.com> >From: "Jason Gunthorpe" <jgg@ziepe.ca> >Date: 02/27/2020 04:53PM >Cc: "syzbot" <syzbot+55de90ab5f44172b0c90@syzkaller.appspotmail.com>, >chuck.lever@oracle.com, dledford@redhat.com, leon@kernel.org, >linux-kernel@vger.kernel.org, linux-rdma@vger.kernel.org, >netdev@vger.kernel.org, parav@mellanox.com, >syzkaller-bugs@googlegroups.com, willy@infradead.org >Subject: [EXTERNAL] Re: possible deadlock in cma_netdev_callback > >On Thu, Feb 27, 2020 at 10:11:13AM +0000, Bernard Metzler wrote: > >> Thanks for letting me know! Hmm, we cannot use RCU locks since >> we potentially sleep. One solution would be to create a list >> of matching interfaces while under lock, unlock and use that >> list for calling siw_listen_address() (which may sleep), >> right...? > >Why do you need to iterate over addresses anyhow? Shouldn't the >listen >just be done with the address the user gave and a BIND DEVICE to the >device siw is connected to?
The user may give a wildcard local address, so we'd have to bind to all addresses of that device...
Best, Bernard.
> >Also that loop in siw_create looks wrong to me > >Jason > >
| |