+++ This bug was initially created as a clone of Bug #1558564 +++ Description of problem: Mounting sockets or special files from subpaths fails. Version-Release number of selected component (if applicable): 3.9.x How reproducible: Steps to Reproduce: 1. Create a pod definition that uses "/" as hostPath. 2. Try and mount something like "/run/docker.sock" as a subpath within a container. 3. The pod will fail to start The reason of this regression is - openat system call being used on https://github.com/kubernetes/kubernetes/blob/master/pkg/util/mount/mount_linux.go#L1138 does not work for special files like Unix sockets and it will throw - Errno::ENXIO: No such device or address /run/docker.sock Actual results: The pod fails to start Expected results: The pod should start --- Additional comment from Hemant Kumar on 2018-03-20 10:34:25 EDT --- For now, while we make the fix. One possible workaround is to directly mount "/run/docker.sock" via a new volume entry and a new VolumeMounts entry that does not uses subpath. Something like: VolumeMounts: [ { mountPath: "/run/docker.sock", name: docker_sock, readOnly: true} ], volumes: [ { name: docker_sock, hostPath: { path: "/run/docker.sock", type: "" }, ] --- Additional comment from Hemant Kumar on 2018-03-22 16:41:08 EDT --- PR upstream for the fix https://github.com/kubernetes/kubernetes/pull/61480 --- Additional comment from Hemant Kumar on 2018-03-26 11:30:50 EDT --- Opened PR for Openshift/origin - https://github.com/openshift/origin/pull/19100
Verify failed in OCP v3.7.44 Still report: Error: failed to prepare subPath for volumeMount "dynamic" of container "testpod"
PR is still merged. MODIFIED is correct state of the BZ.
Verified in OCP: v3.7.46 # uname -a Linux host-172-16-120-34 3.10.0-693.11.1.el7.x86_64 #1 SMP Fri Oct 27 05:39:05 EDT 2017 x86_64 x86_64 x86_64 GNU/Linux # cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.4 (Maipo)
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2018:1576