Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-77059

QStorageInfo::mountedVolumes() doesn't list volumes mounted after "docker overlay volumes"

    XMLWordPrintable

Details

    • Linux/Wayland, Linux/X11, Linux/Other display system
    • 89e0c2854a9dc098380e5286b26de187d04f9826 (qt/qtbase/5.12), 543ae6e6a (dev)

    Description

      Under linux, QStorageInfo::mountedVolumes uses /proc/self/mountinfo to get information about mounted volumes.

      When a docker container is active, all volumes mounted AFTER starting the container and thus appearing after it in mountinfo, are not listed by the function.

      The section in /proc/self/mountinfo with the docker volumes looks like this on my machine:

      727 26 0:52 / /var/lib/docker/overlay2/f3fbad5eedef71145f00729f0826ea8c44defcfec8c92c58aee0aa2c5ea3fa3a/merged rw,relatime shared:399 - overlay overlay rw,lowerdir=/var/lib/docker/overlay2/l/PUP2PIY4EQLAOEDQOZ56BHVE53:/var/lib/docker/overlay2/l/6IIID3C6J3SUXZEA3GJXKQSTLD:/var/lib/docker/overlay2/l/PA6N6URNR7XDBBGGOSFWSFQ2CG:/var/lib/docker/overlay2/l/5EOMBTZNCPOCE4LM3I4JCTNSTT:/var/lib/docker/overlay2/l/DAMINQ46P3LKX2GDDDIWQKDIWC:/var/lib/docker/overlay2/l/DHR3N57AEH4OG5QER5XJW2LXIN:/var/lib/docker/overlay2/l/NW26KA7QPRS2KSVQI77QJWLMHW,upperdir=/var/lib/docker/overlay2/f3fbad5eedef71145f00729f0826ea8c44defcfec8c92c58aee0aa2c5ea3fa3a/diff,workdir=/var/lib/docker/overlay2/f3fbad5eedef71145f00729f0826ea8c44defc
      fec8c92c58aee0aa2c5ea3fa3a/work,index=off,xino=off
      
      759 26 0:53 / /var/lib/docker/overlay2/e52b3e97fbf869892d1aeb9b5dd431a5a569130d39395625a1b28876e5f7ca74/merged rw,relatime shared:408 - overlay overlay rw,lowerdir=/var/lib/docker/overlay2/l/M56M6PF5AHG3IJANALB54MUM4K:/var/lib/docker/overlay2/l/AYE3AXKNJFUQGYRJCEP6ITMNXP:/var/lib/docker/overlay2/l/RWPY6A32HWWDFHD7HMX6GXF3KA:/var/lib/docker/overlay2/l/TCKFSNUSNIZE6POZFXKMJLSLOV:/var/lib/docker/overlay2/l/NROE3HY2RUKSYDW7JZWPBTI23Q:/var/lib/docker/overlay2/l/MIRH4XN7L532IJRFJVTNPCJ7R2:/var/lib/docker/overlay2/l/H7VWWCU7YGZOV24JIDZWU7RW2G:/var/lib/docker/overlay2/l/KHY6DCKADSY5Q6EDET2IGDSNX4:/var/lib/docker/overlay2/l/OVB7XQVMWWNHRUPAGMIXB2C4XQ:/var/lib/docker/overlay2/l/QZFOLH5YTIXVZZ4HDAYCYGMRYP:/var/lib/docker/overlay2/l/EJRC54OB6GS44AAX2PTAGJGRZD:/var/lib/docker/overlay2/l/GAGQWJZ3Y6VSM3XAO7S2ILF5CR:/var/lib/docker/overlay2/l/K3UQYRMKDA3A6DFLMZ4PAT4XQU:/var/lib/docker/overlay2/l/D7FSVD767OSRZRU7K4VMHKYT6N:/var/lib/docker/overlay2/l/C5O6KGY4YABFSKCYFF2OGBAZMH,upperdir=/var/lib/docker/overlay2/e52b3e97fbf869892d1aeb9b5dd431a5a569130d39395625a1b28876e5f7ca74/diff,workdir=/var/lib/docker/overlay2/e52b3e97fbf869892d1aeb9b5dd431a5a569130d39395625a1b28876e5f7ca74/work,index=off,xino=off
      
      776 26 0:54 / /var/lib/docker/containers/287743ac032f55d60bed19e553744b39b38525f81af5ba3c4fc051873e9c4b78/mounts/shm rw,nosuid,nodev,noexec,relatime shared:417 - tmpfs shm rw,size=65536k
      
      793 26 0:55 / /var/lib/docker/containers/41db81e991f429f963f72c0092065938354e59f42900d4078204401bc76a5115/mounts/shm rw,nosuid,nodev,noexec,relatime shared:426 - tmpfs shm rw,size=65536k
      

      The last volume, that is listed by mountedVolumes() isĀ 

      /var/lib/docker/overlay2/e52b3e97fbf869892d1aeb9b5dd431a5a569130d39395625a1b28876e5f7ca74/merged
      

      Everything that comes after it is not listed anymore.

      It seems like QStorageInfo gets confused when parsing the docker section.

      Attachments

        For Gerrit Dashboard: QTBUG-77059
        # Subject Branch Project Status CR V

        Activity

          People

            thiago Thiago Macieira
            bruchpilotxxl Erik Moldtmann
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Gerrit Reviews

                There are no open Gerrit changes