From 19fc0838f274e65587d99bb4d9933c6ab8797505 Mon Sep 17 00:00:00 2001 From: NikitaSkrynnik Date: Mon, 27 May 2024 21:19:44 +1100 Subject: [PATCH 1/2] Add nsmonitor again + add additional checks to prevent random connection closes Signed-off-by: NikitaSkrynnik --- pkg/networkservice/chains/forwarder/server.go | 2 ++ pkg/networkservice/nsmonitor/client.go | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/pkg/networkservice/chains/forwarder/server.go b/pkg/networkservice/chains/forwarder/server.go index d8c8cc6b..54d37892 100644 --- a/pkg/networkservice/chains/forwarder/server.go +++ b/pkg/networkservice/chains/forwarder/server.go @@ -69,6 +69,7 @@ import ( "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/mechanisms/vxlan" "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/mechanisms/wireguard" "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/metrics" + "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/nsmonitor" "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/pinhole" "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/tag" "github.com/networkservicemesh/sdk-vpp/pkg/networkservice/up" @@ -166,6 +167,7 @@ func NewServer(ctx context.Context, tokenGenerator token.GeneratorFunc, vppConn afxdppinhole.NewClient(), pinhole.NewClient(vppConn, pinhole.WithSharedMutex(pinholeMutex)), recvfd.NewClient(), + nsmonitor.NewClient(ctx), sendfd.NewClient(), }, opts.clientAdditionalFunctionality..., diff --git a/pkg/networkservice/nsmonitor/client.go b/pkg/networkservice/nsmonitor/client.go index cb77d866..98d33e56 100644 --- a/pkg/networkservice/nsmonitor/client.go +++ b/pkg/networkservice/nsmonitor/client.go @@ -85,7 +85,7 @@ func (r *netNSMonitorClient) Request(ctx context.Context, request *networkservic case <-cancelCtx.Done(): return case _, ok := <-deleteCh: - if ok { + if ok && cancelCtx.Err() == nil { factory.Close(begin.CancelContext(cancelCtx)) } return From 0807cda34c24fa5446d7b5b1a15758567cf23c77 Mon Sep 17 00:00:00 2001 From: NikitaSkrynnik Date: Mon, 27 May 2024 21:28:08 +1100 Subject: [PATCH 2/2] fix go linter issues Signed-off-by: NikitaSkrynnik --- pkg/networkservice/nsmonitor/client.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/pkg/networkservice/nsmonitor/client.go b/pkg/networkservice/nsmonitor/client.go index 98d33e56..f9c69a59 100644 --- a/pkg/networkservice/nsmonitor/client.go +++ b/pkg/networkservice/nsmonitor/client.go @@ -1,4 +1,4 @@ -// Copyright (c) 2022 Cisco and/or its affiliates. +// Copyright (c) 2022-2024 Cisco and/or its affiliates. // // SPDX-License-Identifier: Apache-2.0 //