[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#19570: bug: df and bind mounts
From: |
Vladimir A . Pavlov |
Subject: |
bug#19570: bug: df and bind mounts |
Date: |
Mon, 12 Jan 2015 02:36:37 +0300 |
Hello,
I have an issue with df (both in version 8.23 and in master branch).
I have tmpfs mounted as /run . There is /run/cgs/httpd subdirectory in
/run (just a subdirectory, not a tmpfs or another mount). This
/run/cgs/httpd is bind-mounted to /usr/cgs/httpd/run.
The current algorithm in df.c:filter_mount_list() chooses the bind
mountpoint since it has the leading slash in the "device" name
("/run/cgs/httpd" vs "run") which is wrong in my setup.
The similar (but not the same) issue is fixed by commit:
http://git.savannah.gnu.org/cgit/coreutils.git/commit/src/df.c?id=ed1a495b3ccb2665a13229ca866f2115bd768d17
I guess the "let real devices with / in the name win" replacement branch
should only be applied if mountpoints are the same as well.
Below is the data to reproduce the bug.
=== /etc/mtab (partial) ===
run /run tmpfs rw,noatime,nodiratime,nodev,noexec,mode=0755,size=1m 0 0
/run/cgs/httpd /usr/cgs/httpd/run none rw,bind 0 0
======
=== Real output (git) ===
Filesystem Size Used Avail Use% Mounted on
/run/cgs/httpd 1.0M 8.0K 1016K 1% /usr/cgs/httpd/run
======
=== Expected output (with the attached patch applied) ===
Filesystem Size Used Avail Use% Mounted on
run 1.0M 8.0K 1016K 1% /run
======
--
Vladimir A. Pavlov
coreutils-8.23-df_bindmount_fix.patch
Description: Source code patch
- bug#19570: bug: df and bind mounts,
Vladimir A . Pavlov <=