istio/istio · error
failed to load args: %v
Error message
failed to load args: %v
What it means
Error "failed to load args: %v" thrown in istio/istio.
Source
Thrown at cni/pkg/plugin/plugin.go:181
}()
conf, err := parseConfig(args.StdinData)
if err != nil {
log.Errorf("istio-cni cmdAdd failed to parse config %v %v", string(args.StdinData), err)
return err
}
// Preemptively check if the pod is a CNI pod.
// It is possible that the kubeconfig is not available if it hasn't been written yet
// by the CNI pod or it is invalid which cause the CNI pod to be unable to start if
// on the creation of a new K8s client. We preemptively check if the pod is a CNI pod
// to avoid a deadlock on the kubeconfig when the k8s client is unnecessary to process
// the CNI add event for the CNI pod itself. This applies to both ambient and sidecar
// mode, since newK8sClient below runs unconditionally and would otherwise deadlock the
// CNI pod when its kubeconfig is not yet present (for example after a node reboot).
k8sArgs := K8sArgs{}
if err := types.LoadArgs(args.Args, &k8sArgs); err != nil {
return fmt.Errorf("failed to load args: %v", err)
}
if isCNIPod(conf, &k8sArgs) {
// This is our own agent pod, so the kube client is not needed to process the
// event. Skip it rather than block on a kubeconfig that may not exist yet.
log.Infof("%v looks like our own agent pod, skipping", k8sArgs.K8S_POD_NAME)
return pluginResponse(conf)
}
// Create a kube client
client, err := newK8sClient(*conf)
if err != nil {
return fmt.Errorf("failed to createNewK8sClient: %v", err)
}
// Actually do the add
mgr := IptablesInterceptRuleMgr()
if conf.NativeNftables {
mgr = NftablesInterceptRuleMgr()View on GitHub (pinned to 8dc789c5cf)
When it happens
Trigger: Thrown at cni/pkg/plugin/plugin.go:181 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of istio/istio@8dc789c5cf (2026-08-15).
Data as JSON: /api/errors/473cfd88f27717fb.
Report an issue: GitHub.