On Fri, Oct 16, 2020 at 04:49:41PM -0400, Chuck Lever wrote: > > > > On Oct 16, 2020, at 2:54 PM, Jason Gunthorpe <jgg@xxxxxxxx> wrote: > > > > On Mon, Oct 12, 2020 at 04:20:40PM +0800, Ka-Cheong Poon wrote: > >> On 10/9/20 11:34 PM, Jason Gunthorpe wrote: > >> > >>> Yes, because namespaces are fundamentally supposed to be anchored in > >>> the processes inside the namespace. > >>> > >>> Having the kernel jump in and start opening holes as soon as a > >>> namespace is created is just wrong. > >>> > >>> At a bare minimum the listener should not exist until something in the > >>> namespace is willing to work with RDS. > >> > >> > >> As I mentioned in a previous email, starting is not the problem. It > >> is the problem of deleting a namespace. > > > > Starting and ending are symmetric. When the last thing inside the > > namespace stops needing RDS then RDS should close down the cm_id's. > > Unfortunately, cluster heartbeat requires the RDS listener endpoint > to continue after the last RDS user goes away, if the container > continues to exist. What purpose is the heartbeat if nobody is listening for RDS stuff inside the net namespace anyhow? > IMO having an explicit RDS start-up and shutdown apart from namespace > creation and deletion is a cleaner approach. On a multi-tenant system > with many containers, some of those containers will want RDS listeners > and some will not. RDS should not assume that every net namespace > needs or wants to have a listener. Right Jason