Subject: bug#35137: [df] incorrect parsing of /proc/self/mountinfo with \r in mount path

From: Zbigniew Jędrzejewski-Szmek <[email-masked]>
Date: Thu, 4 Apr 2019 07:52:25 +0000

See https://github.com/systemd/systemd/issues/12018 and
https://github.com/karelzak/util-linux/issues/780 for additional context.

$ mkdir "$(echo -e foo\\rbar)"
$ sudo mount -t tmpfs tmpfs foo^Mbar/
$ cat -v /proc/self/mountinfo|grep foo
865 39 0:59 / /tmp/foo^Mbar rw,relatime shared:462 - tmpfs tmpfs rw,seclabel
$ df -h | grep foo
$ df -h /tmp/foo$'\r'bar
Filesystem      Size  Used Avail Use% Mounted on
-               3.9G     0  3.9G   0% /tmp/foo?bar

When asked to show all filesystems, the mount point is not shown at all.
When asked to show just that one, df parses the mount point correctly,
but it gets the filesystem type wrong.

Zbyszek