@@ -68,6 +68,7 @@ import (
6868 "k8s.io/kubernetes/pkg/volume/util/volumepathhandler"
6969 volumevalidation "k8s.io/kubernetes/pkg/volume/validation"
7070 "k8s.io/kubernetes/third_party/forked/golang/expansion"
71+ "k8s.io/utils/feature"
7172 utilnet "k8s.io/utils/net"
7273)
7374
@@ -347,7 +348,8 @@ func makeMounts(pod *v1.Pod, podDir string, container *v1.Container, hostName, h
347348 if err != nil {
348349 return nil , cleanupAction , fmt .Errorf ("failed to resolve recursive read-only mode: %w" , err )
349350 }
350- if rro && ! utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) {
351+ if rro && ! utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) &&
352+ ! feature .Enabled (features .RecursiveReadOnlyMounts3 ) {
351353 return nil , cleanupAction , fmt .Errorf ("recursive read-only mount needs feature gate %q to be enabled" , features .RecursiveReadOnlyMounts )
352354 }
353355
@@ -2135,7 +2137,8 @@ func (kl *Kubelet) convertToAPIContainerStatuses(pod *v1.Pod, podStatus *kubecon
21352137 }
21362138 // status.VolumeMounts cannot be propagated from kubecontainer.Status
21372139 // because the CRI API is unaware of the volume names.
2138- if utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) {
2140+ if utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) ||
2141+ feature .Enabled (features .RecursiveReadOnlyMounts3 ) {
21392142 for _ , vol := range container .VolumeMounts {
21402143 volStatus := v1.VolumeMountStatus {
21412144 Name : vol .Name ,
@@ -2147,7 +2150,8 @@ func (kl *Kubelet) convertToAPIContainerStatuses(pod *v1.Pod, podStatus *kubecon
21472150 if b , err := resolveRecursiveReadOnly (vol , supportsRRO ); err != nil {
21482151 klog .ErrorS (err , "failed to resolve recursive read-only mode" , "mode" , * vol .RecursiveReadOnly )
21492152 } else if b {
2150- if utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) {
2153+ if utilfeature .DefaultFeatureGate .Enabled (features .RecursiveReadOnlyMounts ) ||
2154+ feature .Enabled (features .RecursiveReadOnlyMounts3 ) {
21512155 rroMode = v1 .RecursiveReadOnlyEnabled
21522156 } else {
21532157 klog .ErrorS (nil , "recursive read-only mount needs feature gate to be enabled" ,
0 commit comments