Instead of the previous realpath() comparison resulting from the symlink processing. parseMountInfo() was extracting the device number from /proc, so this information was already readily available. We must take care of anonymous block devices (major == 0). Certain filesystems, such as btrfs, always use them, so we must still stat() the device path to get the real block device. This implementation assumes that udev only creates entries in the /dev/disks/by-label directory that are symlinks to real devices, but that must already be the case because they are in /dev in the first place. An alternative implementation would be to compare the inode and host device (st_dev) of the entry, if different /dev entries could have different labels. I don't think that's possible. But multiple /dev entries for the same device is definitely possible. Pick-to: 6.6 Change-Id: I9d43e5b91eb142d6945cfffd1787552af3d09676 Reviewed-by: Ahmad Samir <a.samirh78@gmail.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> |
||
|---|---|---|
| .. | ||
| animation | ||
| global | ||
| io | ||
| ipc | ||
| itemmodels | ||
| kernel | ||
| mimetypes | ||
| platform | ||
| plugin | ||
| serialization | ||
| text | ||
| thread | ||
| time | ||
| tools | ||
| CMakeLists.txt | ||