Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ensure network daemon checks if machineConfigPool resource registered before attempting to pause the MachineConfigPool #350

Merged
merged 4 commits into from
Sep 21, 2022

Conversation

relyt0925
Copy link
Contributor

In hypershift: there are no machineConfigPool resources registered and therefore no need to pause the MachineConfigPool resource when sriov-network-operator is orchestrating sr-iov configuration. This adds a check to see if that api resource is registered with the cluster before attempting to pause the machineConfigPool resource

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@coveralls
Copy link

coveralls commented Aug 11, 2022

Pull Request Test Coverage Report for Build 3079947985

  • 24 of 41 (58.54%) changed or added relevant lines in 3 files are covered.
  • 11 unchanged lines in 5 files lost coverage.
  • Overall coverage increased (+0.08%) to 23.823%

Changes Missing Coverage Covered Lines Changed/Added Lines %
pkg/utils/openshift_context.go 0 3 0.0%
controllers/sriovnetworkpoolconfig_controller.go 9 14 64.29%
pkg/daemon/daemon.go 15 24 62.5%
Files with Coverage Reduction New Missed Lines %
controllers/sriovnetworkpoolconfig_controller.go 1 53.66%
pkg/daemon/daemon.go 1 41.62%
controllers/sriovnetwork_controller.go 2 69.0%
api/v1/helper.go 3 35.8%
controllers/sriovibnetwork_controller.go 4 65.35%
Totals Coverage Status
Change from base Build 3042933490: 0.08%
Covered Lines: 1766
Relevant Lines: 7413

💛 - Coveralls

@bn222
Copy link
Collaborator

bn222 commented Aug 11, 2022

Are you supposing that you run sriov network operator in the managment cluster or on the guest cluster?

@relyt0925
Copy link
Contributor Author

relyt0925 commented Aug 11, 2022

It will run in guest cluster and be installed in same fashion as it is today with operator hub: I do not think it is safe to have operator hub content be dynamically added to the management cluster as it can have different control domains in cloud providers (and in managed SRE offerings)

@relyt0925
Copy link
Contributor Author

I do not believe the go fmt issues are releated to my pr

// In hypershift: there are no machineConfigPool resources
// if the MachineConfigPool resource is not registered in API there is no need to pause it
if err != nil || !isRegistered {
return err
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you add some logging when err is nil ?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

done!

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@relyt0925
Copy link
Contributor Author

@adrianchiris can this be merged? Note the go build issue is unrelated to my pr

@bn222
Copy link
Collaborator

bn222 commented Aug 16, 2022

@relyt0925 After internal discussion, it seems that the main way SRIOV network operator will run in Hypershift will be on the management cluster.

/hold

@github-actions github-actions bot added the hold label Aug 16, 2022
// In hypershift: there are no machineConfigPool resources
// if the MachineConfigPool resource is not registered in API there is no need to pause it
if !isRegistered {
glog.Info("pauseMCP(): MCP resource not registered")
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree that there is no need to pause it, but this isn't the only dependency on MCP that you need to properly handle to support sriov network operator in Hypershift.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

right I do think there are potentially a couple others that would need a similar check on "machineConfig" but was going to break those up into smaller prs

@derekwaynecarr
Copy link

@bn222 can you point me to any internal discussion? to be clear, a user action in the guest cluster MUST NOT result in a new pod running on the mgmt cluster, OLM itself does not have coordinates to any cluster beyond the guest. are you discussing a different scenario?

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@relyt0925
Copy link
Contributor Author

relyt0925 commented Aug 22, 2022

adjusting to look at controlPlaneTopology == "External" to see if it is a hypershift based cluster.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@bn222
Copy link
Collaborator

bn222 commented Sep 8, 2022

/lgtm

@github-actions
Copy link

github-actions bot commented Sep 8, 2022

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

github-actions bot commented Sep 8, 2022

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

github-actions bot commented Sep 8, 2022

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@bn222
Copy link
Collaborator

bn222 commented Sep 13, 2022

There is still a spot that MCO is called from config daemon.

setNodeStateStatus(): syncStatus: Failed, lastSyncError: getNodeMachinePool(): Failed to find the the desiredConfig Annotation

@bn222
Copy link
Collaborator

bn222 commented Sep 14, 2022

/remove hold

@github-actions github-actions bot removed the hold label Sep 14, 2022
@bn222
Copy link
Collaborator

bn222 commented Sep 14, 2022

Tested this on my hypershift setup, and does what it promises.

/lgtm

@zshi-redhat
Copy link
Collaborator

LGTM

@SchSeba SchSeba self-requested a review September 15, 2022 10:29
@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@github-actions
Copy link

Thanks for your PR,
To run vendors CIs use one of:

  • /test-all: To run all tests for all vendors.
  • /test-e2e-all: To run all E2E tests for all vendors.
  • /test-e2e-nvidia-all: To run all E2E tests for NVIDIA vendor.

To skip the vendors CIs use one of:

  • /skip-all: To skip all tests for all vendors.
  • /skip-e2e-all: To skip all E2E tests for all vendors.
  • /skip-e2e-nvidia-all: To skip all E2E tests for NVIDIA vendor.
    Best regards.

@@ -0,0 +1,25 @@
package utils
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we put this file under pkg/daemon ? as its only used there.


snclient := snclientset.NewForConfigOrDie(config)
kubeclient := kubernetes.NewForConfigOrDie(config)
mcclient := mcclientset.NewForConfigOrDie(config)
openshiftFlavor := utils.OpenshiftFlavorDefault
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thats used to construct Openshift context to my understanding. can we move this logic to a "NewOpenshfitContext(config)" or similar method part of openshift_context.go ?

@@ -178,7 +199,10 @@ func runStartCmd(cmd *cobra.Command, args []string) {
startOpts.nodeName,
snclient,
kubeclient,
mcclient,
utils.OpenshiftContext{
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

i think it would be better if daemon will store a pointer to OpenshiftContext, that way its nil when cluster is not openshift. WDYT ?

@adrianchiris
Copy link
Collaborator

will be going to PTO, and dont want to block on it. I have no major concerns with this PR.

@relyt0925 @bn222 PTAL on latest comments. none should be a blocker IMO.
so once reviewed and possibly addressed (to your discretion) im LGTM

@bn222
Copy link
Collaborator

bn222 commented Sep 20, 2022

@adrianchiris Just for the record, you are ok if we don't have pointer and instead embed the struct for now?

@relyt0925
Copy link
Contributor Author

tested with image and everything looks great

Tylers-MacBook-Pro:sriov-network-operator tylerlisowski$ kubectl logs -n openshift-sriov-network-operator sriov-network-config-daemon-pq7pd -c sriov-network-config-daemon -f
I0921 03:45:40.421772   69905 start.go:106] overriding kubernetes api to https://t4daf05c679b746e8f0c3-6b64a6ccc9c596bf59a86625d8fa2202-c000.us-east.satellite.appdomain.cloud:30350
I0921 03:45:41.103421   69905 start.go:162] starting node writer
I0921 03:45:41.131633   69905 start.go:182] Running on platform: Baremetal
I0921 03:45:41.140350   69905 writer.go:47] RunOnce()
I0921 03:45:41.140383   69905 writer.go:71] RunOnce(): first poll for nic status
I0921 03:45:41.174706   69905 utils.go:631] getLinkType(): Device 0000:18:00.0
W0921 03:45:41.175280   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.0 "no such device"
I0921 03:45:41.175443   69905 utils.go:631] getLinkType(): Device 0000:18:00.1
W0921 03:45:41.175780   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.1 "no such device"
I0921 03:45:41.186664   69905 utils.go:631] getLinkType(): Device 0000:18:00.2
W0921 03:45:41.186826   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.2 "no such device"
I0921 03:45:41.186961   69905 utils.go:631] getLinkType(): Device 0000:18:00.3
W0921 03:45:41.187087   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.3 "no such device"
I0921 03:45:41.214916   69905 writer.go:163] setNodeStateStatus(): syncStatus: , lastSyncError: 
I0921 03:45:41.260846   69905 writer.go:201] writeCheckpointFile(): try to decode the checkpoint file
I0921 03:45:41.260978   69905 start.go:197] Starting SriovNetworkConfigDaemon
I0921 03:45:41.261019   69905 daemon.go:208] Run(): start daemon. openshiftFlavor: hypershift
I0921 03:45:41.261058   69905 writer.go:83] Run(): start writer
E0921 03:45:41.275458   69905 daemon.go:951] tryEnableRdma(): fail to enable rdma exit status 1: 
I0921 03:45:41.275480   69905 utils.go:555] LoadKernelModule(): try to load kernel module tun with arguments '[]'
I0921 03:45:41.281888   69905 utils.go:555] LoadKernelModule(): try to load kernel module vhost_net with arguments '[]'
I0921 03:45:41.359098   69905 daemon.go:400] Set log verbose level to: 2
I0921 03:45:46.451108   69905 daemon.go:275] Starting workers
I0921 03:45:46.451146   69905 daemon.go:278] Started workers
I0921 03:45:46.451201   69905 daemon.go:320] worker queue size: 1
I0921 03:45:46.451219   69905 daemon.go:326] get item: 7
I0921 03:45:46.468739   69905 daemon.go:420] nodeStateSyncHandler(): new generation is 7
I0921 03:45:46.468759   69905 plugin.go:31] enableVendorPlugins(): enabling plugins
I0921 03:45:46.468771   69905 plugin.go:68] enableVendorPlugins(): enabled plugins [intel_plugin generic_plugin]
I0921 03:45:46.468774   69905 writer.go:92] Run(): refresh trigger
I0921 03:45:46.468788   69905 writer.go:111] pollNicStatus()
I0921 03:45:46.468793   69905 utils.go:54] DiscoverSriovDevices
I0921 03:45:46.468781   69905 daemon.go:469] nodeStateSyncHandler(): calling OnNodeStateChange for a new node state
I0921 03:45:46.468871   69905 intel_plugin.go:38] intel-plugin OnNodeStateChange()
I0921 03:45:46.468879   69905 daemon.go:478] nodeStateSyncHandler(): plugin intel_plugin: reqDrain false, reqReboot false
I0921 03:45:46.468887   69905 daemon.go:469] nodeStateSyncHandler(): calling OnNodeStateChange for a new node state
I0921 03:45:46.468893   69905 generic_plugin.go:58] generic-plugin OnNodeStateChange()
I0921 03:45:46.468898   69905 generic_plugin.go:153] generic-plugin needDrainNode(): current state '[{Name:eno1 Mac:ac:1f:6b:0b:f2:36 Driver:i40e PciAddress:0000:18:00.0 Vendor:8086 DeviceID:1589 NetFilter: Mtu:1500 NumVfs:0 LinkSpeed:100 Mb/s LinkType:ETH EswitchMode: TotalVfs:32 VFs:[]} {Name:eno2 Mac:ac:1f:6b:0b:f2:37 Driver:i40e PciAddress:0000:18:00.1 Vendor:8086 DeviceID:1589 NetFilter: Mtu:1500 NumVfs:20 LinkSpeed:100 Mb/s LinkType:ETH EswitchMode: TotalVfs:32 VFs:[{Name:eno2v0 Mac:42:3b:be:ae:f7:f7 Assigned: Driver:iavf PciAddress:0000:18:06.0 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:0} {Name:eno2v1 Mac:02:06:a9:9b:fe:c7 Assigned: Driver:iavf PciAddress:0000:18:06.1 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:1} {Name:eno2v10 Mac:c2:a6:b6:3b:f2:d7 Assigned: Driver:iavf PciAddress:0000:18:07.2 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:10} {Name:eno2v11 Mac:b6:d0:de:db:7d:6f Assigned: Driver:iavf PciAddress:0000:18:07.3 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:11} {Name:eno2v12 Mac:4a:de:81:7d:15:3a Assigned: Driver:iavf PciAddress:0000:18:07.4 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:12} {Name:eno2v13 Mac:ee:5b:63:df:5a:ac Assigned: Driver:iavf PciAddress:0000:18:07.5 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:13} {Name:eno2v14 Mac:32:39:49:48:d7:fa Assigned: Driver:iavf PciAddress:0000:18:07.6 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:14} {Name:eno2v15 Mac:42:0c:a5:57:ae:e8 Assigned: Driver:iavf PciAddress:0000:18:07.7 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:15} {Name:eno2v16 Mac:5a:46:7f:2a:28:e4 Assigned: Driver:iavf PciAddress:0000:18:08.0 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:16} {Name:eno2v17 Mac:9a:da:62:02:23:d6 Assigned: Driver:iavf PciAddress:0000:18:08.1 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:17} {Name:eno2v18 Mac:2e:e7:0f:b7:8c:43 Assigned: Driver:iavf PciAddress:0000:18:08.2 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:18} {Name:eno2v19 Mac:ea:48:93:5f:9f:5e Assigned: Driver:iavf PciAddress:0000:18:08.3 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:19} {Name:eno2v2 Mac:16:71:ed:8b:8c:36 Assigned: Driver:iavf PciAddress:0000:18:06.2 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:2} {Name:eno2v3 Mac:fe:3a:5f:8f:9a:17 Assigned: Driver:iavf PciAddress:0000:18:06.3 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:3} {Name:eno2v4 Mac:fe:d1:60:51:41:cc Assigned: Driver:iavf PciAddress:0000:18:06.4 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:4} {Name:eno2v5 Mac:02:1a:82:8c:0f:2d Assigned: Driver:iavf PciAddress:0000:18:06.5 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:5} {Name:eno2v6 Mac:c2:ea:ee:f1:ce:2a Assigned: Driver:iavf PciAddress:0000:18:06.6 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:6} {Name:eno2v7 Mac:e6:a6:06:d6:15:ee Assigned: Driver:iavf PciAddress:0000:18:06.7 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:7} {Name:eno2v8 Mac:0a:78:e4:74:a9:b2 Assigned: Driver:iavf PciAddress:0000:18:07.0 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:8} {Name:eno2v9 Mac:4e:43:36:6e:8f:87 Assigned: Driver:iavf PciAddress:0000:18:07.1 Vendor:8086 DeviceID:154c Vlan:0 Mtu:1500 VfID:9}]} {Name:eno3 Mac:ac:1f:6b:0b:f2:38 Driver:i40e PciAddress:0000:18:00.2 Vendor:8086 DeviceID:1589 NetFilter: Mtu:1500 NumVfs:0 LinkSpeed:100 Mb/s LinkType:ETH EswitchMode: TotalVfs:32 VFs:[]} {Name:eno4 Mac:ac:1f:6b:0b:f2:39 Driver:i40e PciAddress:0000:18:00.3 Vendor:8086 DeviceID:1589 NetFilter: Mtu:1500 NumVfs:0 LinkSpeed:100 Mb/s LinkType:ETH EswitchMode: TotalVfs:32 VFs:[]}]', desired state '[{PciAddress:0000:18:00.1 NumVfs:20 Mtu:1500 Name: LinkType: EswitchMode: VfGroups:[]}]'
I0921 03:45:46.469600   69905 generic_plugin.go:167] generic-plugin needDrainNode(): no need drain, expect NumVfs 20, current NumVfs 20
I0921 03:45:46.469684   69905 daemon.go:478] nodeStateSyncHandler(): plugin generic_plugin: reqDrain false, reqReboot false
I0921 03:45:46.469699   69905 daemon.go:482] nodeStateSyncHandler(): reqDrain false, reqReboot false disableDrain false
I0921 03:45:46.469703   69905 intel_plugin.go:44] intel-plugin Apply()
I0921 03:45:46.469712   69905 generic_plugin.go:75] generic-plugin Apply(): desiredState={19080967 [{0000:18:00.1 20 1500    []}]}
I0921 03:45:46.469740   69905 utils.go:741] RunCommand(): cat [/sys/kernel/security/lockdown]
I0921 03:45:46.470073   69905 utils.go:748] RunCommand(): cat, [/sys/kernel/security/lockdown]
I0921 03:45:46.470800   69905 utils.go:750] RunCommand(): [none] integrity
, %!s(<nil>)
I0921 03:45:46.470812   69905 utils.go:732] IsKernelLockdownMode(): [none] integrity
, <nil>
I0921 03:45:46.470819   69905 utils.go:166] syncNodeState(): no need update interface 0000:18:00.1
I0921 03:45:46.470847   69905 daemon.go:543] nodeStateSyncHandler(): restart device plugin pod
I0921 03:45:46.470855   69905 daemon.go:613] restartDevicePluginPod(): try to restart device plugin pod
I0921 03:45:46.500603   69905 daemon.go:635] restartDevicePluginPod(): Found device plugin pod sriov-device-plugin-628r9, deleting it
I0921 03:45:46.505899   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.0
I0921 03:45:46.505936   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:45:46.505973   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:45:46.505978   69905 utils.go:472] getNetDevMac(): get Mac for device eno1
I0921 03:45:46.505994   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno1
I0921 03:45:46.506013   69905 utils.go:631] getLinkType(): Device 0000:18:00.0
I0921 03:45:46.506163   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.0
W0921 03:45:46.506219   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.0 "no such device"
I0921 03:45:46.506261   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.1
I0921 03:45:46.506296   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:45:46.506330   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:45:46.506334   69905 utils.go:472] getNetDevMac(): get Mac for device eno2
I0921 03:45:46.506699   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno2
I0921 03:45:46.506717   69905 utils.go:631] getLinkType(): Device 0000:18:00.1
I0921 03:45:46.507008   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.1
W0921 03:45:46.507061   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.1 "no such device"
I0921 03:45:46.507648   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.0
I0921 03:45:46.507684   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:45:46.507720   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:45:46.507724   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v0
I0921 03:45:46.507856   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.1
I0921 03:45:46.507886   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:45:46.507927   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:45:46.507930   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v1
I0921 03:45:46.508279   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.2
I0921 03:45:46.508310   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:45:46.508345   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:45:46.508348   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v10
I0921 03:45:46.508716   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.3
I0921 03:45:46.508749   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:45:46.508783   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:45:46.508786   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v11
I0921 03:45:46.509195   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.4
I0921 03:45:46.509229   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:45:46.509264   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:45:46.509269   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v12
I0921 03:45:46.509683   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.5
I0921 03:45:46.509710   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:45:46.509745   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:45:46.509749   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v13
I0921 03:45:46.510210   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.6
I0921 03:45:46.510244   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:45:46.510278   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:45:46.510282   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v14
I0921 03:45:46.510747   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.7
I0921 03:45:46.510774   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:45:46.510808   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:45:46.510811   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v15
I0921 03:45:46.511316   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.0
I0921 03:45:46.511351   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:45:46.511385   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:45:46.511388   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v16
I0921 03:45:46.511896   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.1
I0921 03:45:46.511924   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:45:46.511959   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:45:46.511963   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v17
I0921 03:45:46.512515   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.2
I0921 03:45:46.512548   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:45:46.512588   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:45:46.512592   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v18
I0921 03:45:46.513162   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.3
I0921 03:45:46.513195   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:45:46.513230   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:45:46.513234   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v19
I0921 03:45:46.513402   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.2
I0921 03:45:46.513432   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:45:46.513467   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:45:46.513471   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v2
I0921 03:45:46.513634   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.3
I0921 03:45:46.513662   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:45:46.513697   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:45:46.513700   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v3
I0921 03:45:46.513888   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.4
I0921 03:45:46.513917   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:45:46.513952   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:45:46.513956   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v4
I0921 03:45:46.514173   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.5
I0921 03:45:46.514203   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:45:46.514238   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:45:46.514242   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v5
I0921 03:45:46.514492   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.6
I0921 03:45:46.514522   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:45:46.514560   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:45:46.514563   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v6
I0921 03:45:46.514824   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.7
I0921 03:45:46.514852   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:45:46.514885   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:45:46.514889   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v7
I0921 03:45:46.515177   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.0
I0921 03:45:46.515210   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:45:46.515244   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:45:46.515247   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v8
I0921 03:45:46.515568   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.1
I0921 03:45:46.515597   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:45:46.515632   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:45:46.515636   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v9
I0921 03:45:46.515673   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.2
I0921 03:45:46.515697   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:45:46.515736   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:45:46.515739   69905 utils.go:472] getNetDevMac(): get Mac for device eno3
I0921 03:45:46.515753   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno3
I0921 03:45:46.515769   69905 utils.go:631] getLinkType(): Device 0000:18:00.2
I0921 03:45:46.515860   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.2
W0921 03:45:46.515906   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.2 "no such device"
I0921 03:45:46.515946   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.3
I0921 03:45:46.515971   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:45:46.516003   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:45:46.516007   69905 utils.go:472] getNetDevMac(): get Mac for device eno4
I0921 03:45:46.516022   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno4
I0921 03:45:46.516038   69905 utils.go:631] getLinkType(): Device 0000:18:00.3
I0921 03:45:46.516123   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.3
W0921 03:45:46.516164   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.3 "no such device"
I0921 03:45:46.536927   69905 writer.go:163] setNodeStateStatus(): syncStatus: InProgress, lastSyncError: 
I0921 03:45:46.615039   69905 daemon.go:656] restartDevicePluginPod(): waiting for device plugin sriov-device-plugin-628r9 to exit
I0921 03:45:50.718840   69905 daemon.go:649] restartDevicePluginPod(): device plugin pod exited
I0921 03:45:50.718869   69905 daemon.go:561] nodeStateSyncHandler(): sync succeeded
I0921 03:45:50.718902   69905 writer.go:92] Run(): refresh trigger
I0921 03:45:50.718905   69905 writer.go:111] pollNicStatus()
I0921 03:45:50.718909   69905 utils.go:54] DiscoverSriovDevices
I0921 03:45:50.752793   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.0
I0921 03:45:50.752857   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:45:50.752896   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:45:50.752899   69905 utils.go:472] getNetDevMac(): get Mac for device eno1
I0921 03:45:50.752917   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno1
I0921 03:45:50.752948   69905 utils.go:631] getLinkType(): Device 0000:18:00.0
I0921 03:45:50.753127   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.0
W0921 03:45:50.753183   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.0 "no such device"
I0921 03:45:50.753229   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.1
I0921 03:45:50.753260   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:45:50.753297   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:45:50.753301   69905 utils.go:472] getNetDevMac(): get Mac for device eno2
I0921 03:45:50.753317   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno2
I0921 03:45:50.753336   69905 utils.go:631] getLinkType(): Device 0000:18:00.1
I0921 03:45:50.753631   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.1
W0921 03:45:50.753676   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.1 "no such device"
I0921 03:45:50.754251   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.0
I0921 03:45:50.754288   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:45:50.754328   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:45:50.754332   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v0
I0921 03:45:50.754451   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.1
I0921 03:45:50.754480   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:45:50.754515   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:45:50.754519   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v1
I0921 03:45:50.754849   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.2
I0921 03:45:50.754876   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:45:50.754910   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:45:50.754913   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v10
I0921 03:45:50.755286   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.3
I0921 03:45:50.755322   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:45:50.755365   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:45:50.755369   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v11
I0921 03:45:50.755745   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.4
I0921 03:45:50.755773   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:45:50.755811   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:45:50.755815   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v12
I0921 03:45:50.756234   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.5
I0921 03:45:50.756264   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:45:50.756303   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:45:50.756307   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v13
I0921 03:45:50.756800   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.6
I0921 03:45:50.756828   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:45:50.756867   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:45:50.756871   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v14
I0921 03:45:50.757353   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.7
I0921 03:45:50.757383   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:45:50.757418   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:45:50.757422   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v15
I0921 03:45:50.757892   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.0
I0921 03:45:50.757923   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:45:50.757959   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:45:50.757963   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v16
I0921 03:45:50.758461   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.1
I0921 03:45:50.758490   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:45:50.758531   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:45:50.758534   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v17
I0921 03:45:50.759052   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.2
I0921 03:45:50.759097   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:45:50.759137   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:45:50.759141   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v18
I0921 03:45:50.759692   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.3
I0921 03:45:50.759720   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:45:50.759754   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:45:50.759758   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v19
I0921 03:45:50.759900   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.2
I0921 03:45:50.759929   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:45:50.759965   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:45:50.759968   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v2
I0921 03:45:50.760154   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.3
I0921 03:45:50.760187   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:45:50.760234   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:45:50.760238   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v3
I0921 03:45:50.760424   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.4
I0921 03:45:50.760451   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:45:50.760490   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:45:50.760494   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v4
I0921 03:45:50.760699   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.5
I0921 03:45:50.760726   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:45:50.760764   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:45:50.760768   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v5
I0921 03:45:50.760998   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.6
I0921 03:45:50.761026   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:45:50.761066   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:45:50.761070   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v6
I0921 03:45:50.761336   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.7
I0921 03:45:50.761367   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:45:50.761402   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:45:50.761406   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v7
I0921 03:45:50.761685   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.0
I0921 03:45:50.761712   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:45:50.761745   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:45:50.761749   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v8
I0921 03:45:50.762085   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.1
I0921 03:45:50.762122   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:45:50.762162   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:45:50.762165   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v9
I0921 03:45:50.762203   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.2
I0921 03:45:50.762239   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:45:50.762278   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:45:50.762281   69905 utils.go:472] getNetDevMac(): get Mac for device eno3
I0921 03:45:50.762296   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno3
I0921 03:45:50.762314   69905 utils.go:631] getLinkType(): Device 0000:18:00.2
I0921 03:45:50.762411   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.2
W0921 03:45:50.762460   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.2 "no such device"
I0921 03:45:50.762506   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.3
I0921 03:45:50.762539   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:45:50.762575   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:45:50.762579   69905 utils.go:472] getNetDevMac(): get Mac for device eno4
I0921 03:45:50.762593   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno4
I0921 03:45:50.762614   69905 utils.go:631] getLinkType(): Device 0000:18:00.3
I0921 03:45:50.762693   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.3
W0921 03:45:50.762738   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.3 "no such device"
I0921 03:45:50.788963   69905 writer.go:163] setNodeStateStatus(): syncStatus: Succeeded, lastSyncError: 
I0921 03:45:50.827446   69905 daemon.go:357] Successfully synced
I0921 03:45:50.827476   69905 daemon.go:320] worker queue size: 1
I0921 03:45:50.827488   69905 daemon.go:326] get item: 7
I0921 03:45:50.876875   69905 daemon.go:420] nodeStateSyncHandler(): new generation is 7
I0921 03:45:50.876890   69905 daemon.go:423] nodeStateSyncHandler(): Interface not changed
I0921 03:45:50.876894   69905 daemon.go:357] Successfully synced
I0921 03:45:50.876897   69905 daemon.go:320] worker queue size: 1
I0921 03:45:50.876900   69905 daemon.go:326] get item: 7
I0921 03:45:50.887306   69905 daemon.go:420] nodeStateSyncHandler(): new generation is 7
I0921 03:45:50.887317   69905 daemon.go:423] nodeStateSyncHandler(): Interface not changed
I0921 03:45:50.887320   69905 daemon.go:357] Successfully synced
I0921 03:45:50.887324   69905 daemon.go:320] worker queue size: 0
I0921 03:46:01.369116   69905 daemon.go:326] get item: 7
I0921 03:46:01.383508   69905 daemon.go:420] nodeStateSyncHandler(): new generation is 7
I0921 03:46:01.383534   69905 daemon.go:423] nodeStateSyncHandler(): Interface not changed
I0921 03:46:01.383555   69905 daemon.go:357] Successfully synced
I0921 03:46:01.383560   69905 daemon.go:320] worker queue size: 0
I0921 03:46:16.370091   69905 daemon.go:326] get item: 7
I0921 03:46:16.387142   69905 daemon.go:420] nodeStateSyncHandler(): new generation is 7
I0921 03:46:16.387167   69905 daemon.go:423] nodeStateSyncHandler(): Interface not changed
I0921 03:46:16.387179   69905 daemon.go:357] Successfully synced
I0921 03:46:16.387193   69905 daemon.go:320] worker queue size: 0
I0921 03:46:16.451414   69905 daemon.go:295] Run(): period refresh
I0921 03:46:16.462878   69905 daemon.go:970] tryCreateSwitchdevUdevRule()
I0921 03:46:16.462962   69905 daemon.go:1028] tryCreateNMUdevRule()
I0921 03:46:20.827457   69905 writer.go:101] Run(): period refresh
I0921 03:46:20.827484   69905 writer.go:111] pollNicStatus()
I0921 03:46:20.827493   69905 utils.go:54] DiscoverSriovDevices
I0921 03:46:20.862403   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.0
I0921 03:46:20.862483   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:46:20.862527   69905 utils.go:446] tryGetInterfaceName(): name is eno1
I0921 03:46:20.862530   69905 utils.go:472] getNetDevMac(): get Mac for device eno1
I0921 03:46:20.862551   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno1
I0921 03:46:20.862572   69905 utils.go:631] getLinkType(): Device 0000:18:00.0
I0921 03:46:20.862742   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.0
W0921 03:46:20.862799   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.0 "no such device"
I0921 03:46:20.862847   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.1
I0921 03:46:20.862881   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:46:20.862921   69905 utils.go:446] tryGetInterfaceName(): name is eno2
I0921 03:46:20.862926   69905 utils.go:472] getNetDevMac(): get Mac for device eno2
I0921 03:46:20.862942   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno2
I0921 03:46:20.862961   69905 utils.go:631] getLinkType(): Device 0000:18:00.1
I0921 03:46:20.863279   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.1
W0921 03:46:20.863325   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.1 "no such device"
I0921 03:46:20.863933   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.0
I0921 03:46:20.863972   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:46:20.864014   69905 utils.go:446] tryGetInterfaceName(): name is eno2v0
I0921 03:46:20.864018   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v0
I0921 03:46:20.864147   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.1
I0921 03:46:20.864178   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:46:20.864215   69905 utils.go:446] tryGetInterfaceName(): name is eno2v1
I0921 03:46:20.864219   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v1
I0921 03:46:20.864564   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.2
I0921 03:46:20.864593   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:46:20.864630   69905 utils.go:446] tryGetInterfaceName(): name is eno2v10
I0921 03:46:20.864634   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v10
I0921 03:46:20.864996   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.3
I0921 03:46:20.865029   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:46:20.865074   69905 utils.go:446] tryGetInterfaceName(): name is eno2v11
I0921 03:46:20.865078   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v11
I0921 03:46:20.865468   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.4
I0921 03:46:20.865498   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:46:20.865539   69905 utils.go:446] tryGetInterfaceName(): name is eno2v12
I0921 03:46:20.865543   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v12
I0921 03:46:20.865957   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.5
I0921 03:46:20.865987   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:46:20.866027   69905 utils.go:446] tryGetInterfaceName(): name is eno2v13
I0921 03:46:20.866031   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v13
I0921 03:46:20.866471   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.6
I0921 03:46:20.866501   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:46:20.866540   69905 utils.go:446] tryGetInterfaceName(): name is eno2v14
I0921 03:46:20.866543   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v14
I0921 03:46:20.867004   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.7
I0921 03:46:20.867032   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:46:20.867072   69905 utils.go:446] tryGetInterfaceName(): name is eno2v15
I0921 03:46:20.867076   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v15
I0921 03:46:20.867561   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.0
I0921 03:46:20.867595   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:46:20.867633   69905 utils.go:446] tryGetInterfaceName(): name is eno2v16
I0921 03:46:20.867636   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v16
I0921 03:46:20.868153   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.1
I0921 03:46:20.868182   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:46:20.868224   69905 utils.go:446] tryGetInterfaceName(): name is eno2v17
I0921 03:46:20.868227   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v17
I0921 03:46:20.868769   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.2
I0921 03:46:20.868800   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:46:20.868842   69905 utils.go:446] tryGetInterfaceName(): name is eno2v18
I0921 03:46:20.868846   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v18
I0921 03:46:20.869465   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:08.3
I0921 03:46:20.869497   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:46:20.869534   69905 utils.go:446] tryGetInterfaceName(): name is eno2v19
I0921 03:46:20.869538   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v19
I0921 03:46:20.869680   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.2
I0921 03:46:20.869709   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:46:20.869747   69905 utils.go:446] tryGetInterfaceName(): name is eno2v2
I0921 03:46:20.869751   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v2
I0921 03:46:20.869915   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.3
I0921 03:46:20.869946   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:46:20.869983   69905 utils.go:446] tryGetInterfaceName(): name is eno2v3
I0921 03:46:20.869987   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v3
I0921 03:46:20.870209   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.4
I0921 03:46:20.870240   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:46:20.870282   69905 utils.go:446] tryGetInterfaceName(): name is eno2v4
I0921 03:46:20.870286   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v4
I0921 03:46:20.870519   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.5
I0921 03:46:20.870547   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:46:20.870598   69905 utils.go:446] tryGetInterfaceName(): name is eno2v5
I0921 03:46:20.870602   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v5
I0921 03:46:20.870862   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.6
I0921 03:46:20.870892   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:46:20.870931   69905 utils.go:446] tryGetInterfaceName(): name is eno2v6
I0921 03:46:20.870935   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v6
I0921 03:46:20.871241   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:06.7
I0921 03:46:20.871272   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:46:20.871308   69905 utils.go:446] tryGetInterfaceName(): name is eno2v7
I0921 03:46:20.871312   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v7
I0921 03:46:20.871604   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.0
I0921 03:46:20.871634   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:46:20.871673   69905 utils.go:446] tryGetInterfaceName(): name is eno2v8
I0921 03:46:20.871677   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v8
I0921 03:46:20.871991   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:07.1
I0921 03:46:20.872020   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:46:20.872065   69905 utils.go:446] tryGetInterfaceName(): name is eno2v9
I0921 03:46:20.872069   69905 utils.go:472] getNetDevMac(): get Mac for device eno2v9
I0921 03:46:20.872107   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.2
I0921 03:46:20.872135   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:46:20.872176   69905 utils.go:446] tryGetInterfaceName(): name is eno3
I0921 03:46:20.872180   69905 utils.go:472] getNetDevMac(): get Mac for device eno3
I0921 03:46:20.872195   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno3
I0921 03:46:20.872215   69905 utils.go:631] getLinkType(): Device 0000:18:00.2
I0921 03:46:20.872314   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.2
W0921 03:46:20.872362   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.2 "no such device"
I0921 03:46:20.872410   69905 utils.go:451] getNetdevMTU(): get MTU for device 0000:18:00.3
I0921 03:46:20.872438   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:46:20.872475   69905 utils.go:446] tryGetInterfaceName(): name is eno4
I0921 03:46:20.872478   69905 utils.go:472] getNetDevMac(): get Mac for device eno4
I0921 03:46:20.872493   69905 utils.go:484] getNetDevLinkSpeed(): get LinkSpeed for device eno4
I0921 03:46:20.872513   69905 utils.go:631] getLinkType(): Device 0000:18:00.3
I0921 03:46:20.872597   69905 utils.go:684] GetNicSriovMode(): device 0000:18:00.3
W0921 03:46:20.872639   69905 utils.go:128] DiscoverSriovDevices(): unable to get device mode 0000:18:00.3 "no such device"
I0921 03:46:20.991366   69905 writer.go:163] setNodeStateStatus(): syncStatus: Succeeded, lastSyncError: 

@bn222
Copy link
Collaborator

bn222 commented Sep 21, 2022

LGTM

@bn222 bn222 merged commit 0ee5453 into k8snetworkplumbingwg:master Sep 21, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants