[Devel] [PATCH] ve: don't call shutdown hook for now
This hook is needed only for releaseing venet IP address early (thus allowing to restart container with the same IP faster). But mount are destroyed asynchroniosly, and thus NFS mount can be destroyed after IP address is dropped. Let's fir this race it the way how all the world does things: release IP with network namespace. https://jira.sw.ru/browse/PSBM-73193 Signed-off-by: Stanislav Kinsburskiy --- kernel/ve/ve.c |3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/ve/ve.c b/kernel/ve/ve.c index b0188c3..4efb9d9 100644 --- a/kernel/ve/ve.c +++ b/kernel/ve/ve.c @@ -451,7 +451,8 @@ static void ve_drop_context(struct ve_struct *ve) synchronize_rcu(); put_nsproxy(ve_ns); - ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); + /* This have to be revisited */ +// ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); put_cred(ve->init_cred); ve->init_cred = NULL; ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel
Re: [Devel] [PATCH] ve: don't call shutdown hook for now
On Mon, Oct 02, 2017 at 06:47:19PM +0400, Stanislav Kinsburskiy wrote: > This hook is needed only for releaseing venet IP address early (thus allowing > to restart container with the same IP faster). > But mount are destroyed asynchroniosly, and thus NFS mount can be destroyed > after IP address is dropped. > Let's fir this race it the way how all the world does things: release IP with > network namespace. Why don't you remove this code? Who added this hook? What was a reason? > > https://jira.sw.ru/browse/PSBM-73193 > > Signed-off-by: Stanislav Kinsburskiy > --- > kernel/ve/ve.c |3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/kernel/ve/ve.c b/kernel/ve/ve.c > index b0188c3..4efb9d9 100644 > --- a/kernel/ve/ve.c > +++ b/kernel/ve/ve.c > @@ -451,7 +451,8 @@ static void ve_drop_context(struct ve_struct *ve) > synchronize_rcu(); > put_nsproxy(ve_ns); > > - ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); > + /* This have to be revisited */ > +// ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); > > put_cred(ve->init_cred); > ve->init_cred = NULL; > > ___ > Devel mailing list > Devel@openvz.org > https://lists.openvz.org/mailman/listinfo/devel ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel
Re: [Devel] [PATCH] ve: don't call shutdown hook for now
It was me. The reason is explained in the patch description (you can find more details in description of the commit, introduced the hook). I'm waiting for khorenko@ to convince him, that the idea to "podkovat' blohy" was wrong by design and we should drop the hook. Once I succeed, I'll sent appropriate series to get rid of it completely. So this patch is temporary one, because too many tests have failed because of this race. 2 окт. 2017 г. 8:05 PM пользователь Andrey Vagin написал: On Mon, Oct 02, 2017 at 06:47:19PM +0400, Stanislav Kinsburskiy wrote: > This hook is needed only for releaseing venet IP address early (thus allowing > to restart container with the same IP faster). > But mount are destroyed asynchroniosly, and thus NFS mount can be destroyed > after IP address is dropped. > Let's fir this race it the way how all the world does things: release IP with > network namespace. Why don't you remove this code? Who added this hook? What was a reason? > > https://jira.sw.ru/browse/PSBM-73193 > > Signed-off-by: Stanislav Kinsburskiy > --- > kernel/ve/ve.c |3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/kernel/ve/ve.c b/kernel/ve/ve.c > index b0188c3..4efb9d9 100644 > --- a/kernel/ve/ve.c > +++ b/kernel/ve/ve.c > @@ -451,7 +451,8 @@ static void ve_drop_context(struct ve_struct *ve) >synchronize_rcu(); >put_nsproxy(ve_ns); > > - ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); > + /* This have to be revisited */ > +// ve_hook_iterate_fini(VE_SHUTDOWN_CHAIN, ve); > >put_cred(ve->init_cred); >ve->init_cred = NULL; > > ___ > Devel mailing list > Devel@openvz.org > https://lists.openvz.org/mailman/listinfo/devel ___ Devel mailing list Devel@openvz.org https://lists.openvz.org/mailman/listinfo/devel