-----"Jason Gunthorpe" <jgg@xxxxxxxx> wrote: ----- >To: "Bernard Metzler" <BMT@xxxxxxxxxxxxxx> >From: "Jason Gunthorpe" <jgg@xxxxxxxx> >Date: 02/12/2019 05:42PM >Cc: linux-rdma@xxxxxxxxxxxxxxx >Subject: Re: [PATCH v4 03/13] SIW network and RDMA core interface > >On Tue, Feb 12, 2019 at 03:58:54PM +0000, Bernard Metzler wrote: > >> >Drivers should be designed so that when all PD's are closed most >of >> >their resources are gone as well. The core code will ensure all >PD's >> >are closed. > >> The problem probably is, that PD's are not going away as >> long as the application sits on them. What I want is the provider >> to break affected connections, if a link goes down and let >> the application know about it. > >This is not appropriate. > >In kernel users are notified that the device is going down and will >disconnect in an orderly way. > >uverbs users should get a device fatal async event and should clean >up >as well. > Some applications don't do that. I think it is essential a non privileged user land application cannot prevent a netdev to go away if it should. >If you want to expedite removal of uverbs then siw has to support the >uverbs 'disassociate' flow. > Ah OK. I was not aware of that. Do we have an example provider code for that to help me understanding that flow? I just see a few providers with empty disassociate_ucontext functions. I am not sure this is what it should be? Thank you, Bernard.