From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: Ruediger Meier Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Thu, 02 Mar 2017 09:52:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: 25930@debbugs.gnu.org X-Debbugs-Original-To: bug-coreutils@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.148844831819803 (code B ref -1); Thu, 02 Mar 2017 09:52:01 +0000 Received: (at submit) by debbugs.gnu.org; 2 Mar 2017 09:51:58 +0000 Received: from localhost ([127.0.0.1]:35325 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjNOv-00059L-QR for submit@debbugs.gnu.org; Thu, 02 Mar 2017 04:51:57 -0500 Received: from eggs.gnu.org ([208.118.235.92]:51847) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjNOt-000599-Ua for submit@debbugs.gnu.org; Thu, 02 Mar 2017 04:51:56 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cjNOo-0002eu-36 for submit@debbugs.gnu.org; Thu, 02 Mar 2017 04:51:50 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:47269) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cjNOn-0002ei-Vt for submit@debbugs.gnu.org; Thu, 02 Mar 2017 04:51:50 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:42817) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cjNOm-0006yY-RM for bug-coreutils@gnu.org; Thu, 02 Mar 2017 04:51:49 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cjNOj-0002db-OD for bug-coreutils@gnu.org; Thu, 02 Mar 2017 04:51:48 -0500 Received: from mout.gmx.net ([212.227.15.18]:62548) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1cjNOj-0002dS-DF for bug-coreutils@gnu.org; Thu, 02 Mar 2017 04:51:45 -0500 Received: from zappa.l.ga-group.nl ([87.128.112.108]) by mail.gmx.com (mrgmx002 [212.227.17.190]) with ESMTPSA (Nemesis) id 0McEkx-1cyz0L1XeR-00JdDf for ; Thu, 02 Mar 2017 10:51:42 +0100 From: Ruediger Meier Date: Thu, 2 Mar 2017 10:51:40 +0100 User-Agent: KMail/1.9.10 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <201703021051.40563.sweet_f_a@gmx.de> X-Provags-ID: V03:K0:fHaL39eYe2Or/1aD4aiJWHDm4c/1JVpbOEeglJdKLjJu4OuhfP5 KL5S+8dDknW99y+nzucsTMotSU1+KmHFFiaXPE0A+WuHIyWTorif9/1CPcgXxtpwMffd2HV FVdzqWvLQHOBhwc1exwmhhTLnj2haUGo39uAAxcR5BbIvL+Yxl4w805Kh3hH9+D4O3/QUdB TX3H+AuZA6TeyFitUAvNg== X-UI-Out-Filterresults: notjunk:1;V01:K0:Xt+C4bjl7oA=:32JDkcHADgiFh7kv687qpW lwiMW8zmDt34XEXKSy98+LVFdDnQMTsiG78523l9Z9XAM8mFE68MMGnWGSMlS+oNE71SJ70MI QxuFGnqZhWo2rE1dCoqYWhkwAKUAL8+lqLga7VE1PhiX3ZT0OEbIA6khVpEWSW7/xNY96GHSe W16lfInOO9ffgVT/Jv4+yKrU3jtEa6Hkd5vHhjjvK76uG99anL2NNuUMzdMx3WXGW7yVcylQv G2NJq+Bl43y3xJfyVZC2tRQZIKDH+HqnvTdI8D1qYqNsiuFk5JgGG48BtYXWGAFmY1yzG6TQn SvewxvOn1+gZLR1gAdKJF2JP04AOcuq4z3xT8Wg0j8bWs4zVQ+IagEQCmmMUUpKIjsIw68zPS f+h5iT3fXi4QPCqgVqnJDpm6am6ld2UNAcSqna8ww7q2VYN4n9XrU2MwCygsB3sMVEP2c5G1w 99/M6CSMbm1t+BPH6IUZ2MWV7OPJlObz8NGsyDHUSiCaRbujKLpaeHzfxvAJ61+LSoUFmteH2 STqOomwKSKHMNdDKA7U9N+tffrGHenMyshmhgKbgwPXAPTfpGySsuC22yaCKV5QTu7fryy1n8 5JH3LQJnpeFIGMqyzc73t3KjlbXTZnZFJ+CYDtHrDvELk0wxy/pkRsTE+dt7SxQFArWbCHPtm 65vDQrQzQ6WhML+IE0IYHXBMPnDTxGRVb9xl/hwFFPJaTITJmUmmxpR5VrPDEBvFdsPuN/QYg e/WFAOHpfgMGOpZQ6XKz1Lzz59RboE8l0mjzYqtPYVVMNT5hyNnMxgTYaVA= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.1 (----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -4.1 (----) Hi, I have two bind mounts of the same filesystem $ grep "/tmp" /etc/fstab /dev/vg0/tmpdirs /mnt/tmpdirs ext4 acl,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 1 2 /mnt/tmpdirs/tmp /tmp none bind 0 0 /mnt/tmpdirs/var/tmp /var/tmp none bind 0 0 Using mv to move files between the bind mounts makes a slow copy: $ time mv /var/tmp/BIGFILE /tmp/ real 0m0.622s user 0m0.001s sys 0m0.621s In theory mv could know somehow that's the same filesystem and do it like this: $ time mv /mnt/tmpdirs/tmp/BIGFILE /mnt/tmpdirs/var/tmp/ real 0m0.004s user 0m0.001s sys 0m0.003s Would it be possible to optimize mv regarding bind mounts? Or perhaps are there other filesystems which do this better than ext4? Specially the case that the original whole filesystem (/mnt/tmpdirs) is umounted should work too somewhow. cu, Rudi From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: Sven Joachim Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Thu, 02 Mar 2017 10:07:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Ruediger Meier Cc: 25930@debbugs.gnu.org Received: via spool by 25930-submit@debbugs.gnu.org id=B25930.148844916721120 (code B ref 25930); Thu, 02 Mar 2017 10:07:01 +0000 Received: (at 25930) by debbugs.gnu.org; 2 Mar 2017 10:06:07 +0000 Received: from localhost ([127.0.0.1]:35330 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjNcd-0005Ua-2I for submit@debbugs.gnu.org; Thu, 02 Mar 2017 05:06:07 -0500 Received: from mout.gmx.net ([212.227.15.19]:63195) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjNcb-0005U5-Ex for 25930@debbugs.gnu.org; Thu, 02 Mar 2017 05:06:05 -0500 Received: from localhost.localdomain ([46.82.182.180]) by mail.gmx.com (mrgmx003 [212.227.17.190]) with ESMTPSA (Nemesis) id 0LqRKT-1c5O6h3LcX-00e368; Thu, 02 Mar 2017 11:05:58 +0100 Received: by localhost.localdomain (Postfix, from userid 1000) id A5610802AD; Thu, 2 Mar 2017 11:05:57 +0100 (CET) From: Sven Joachim References: <201703021051.40563.sweet_f_a@gmx.de> Date: Thu, 02 Mar 2017 11:05:57 +0100 In-Reply-To: <201703021051.40563.sweet_f_a@gmx.de> (Ruediger Meier's message of "Thu, 2 Mar 2017 10:51:40 +0100") Message-ID: <877f48ouwq.fsf@turtle.gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K0:L43FuQqp7RscbmWEf931yOOzrkZ1RgUXRiZX4eRg9grwv/dSq8l tH9rCA9ZA7SFkYdQkQe2obcqIjo+VGsYpwyJAt3RDlceOqIhc+OqN12mMjlDjBlmPFPKPsp 34W7mhe40ucKbUplDNNCWVC7vmG5vNG3Ym8D7NQZ3r5t3AEdrgGquogW5tz4p23hJa+BqV8 fw4n8jwyzD75pfgzmgowg== X-UI-Out-Filterresults: notjunk:1;V01:K0:36q7zG/BoBY=:luwIm3l+StnnydL1UONefq /h3a8nL16p1JuT56pR94nCir5eWJF4rueTATmeZKjNPegtRGP88j8OmlbLa/kFMSvneeeSF2k lNC5PFYKLCCB22S1HcU4U8HuotUAjuZg0bYR+M2ZE1lwrdAwm8C31/GajOEIWnZBaE34kfNXp 1QUfLe4WblNtYMR2f05arpUY4PV+wyG5nkBdpICZ4JXuLHu2MGJxECCzzfW/qThMVwGVW2lpd PjF6pD8ECCYybot0/gguw2dlQ0BGTmu8OF4jbSpVGw+b+3bHNgAq413daB1wbECdobWTvQQSH 9Yj0gQpCVpCJxcoOsVjo1VDWLvpx2L5+LUb9Ltnp2Ga1PuBbSa29AGAJ0a8HUEtVTB2CqTOTL maURVgXvVID/hOMJv92IjtNMCwY0Vr3UgPi3JQkG6HlckVpYT1LQHJJpQNnd4T1J1v+jhapAP mTpexkFL2rRWYU6HkY+V7lTgigp7F2eiYAl8owbVdf0RbDH6H0uUdEVfwVNLqt95wk9V8zunr FYWPimMIlpd6GlmHeO1wS/M6knMK5fcqYVJEZY0Z/qgT0YiG2iBzOoJJNLtk592gi7eUqAx6W XtNM0GRqwI2AT12T8PPEEbI8+NbXGgjCtHVJ1Lczj01OJIa5YliarcCm3jsww/526Z/zRiOnu sncKxSFZiAqDMm1YVzqSbE337NhBsxKqDhmowZ4kBLNIKiGR2Lz+nM4IUheYRAYyDgXw7v8Yn 5Us9PZ6Q4xFoHgtazk5jA4iuFh/XecCjvr1d9M6KM2mmnaA0fBPAvDwqPR2tUeHsusQQbeD6t zWQLchB X-Spam-Score: -0.8 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.8 (/) Am 02.03.2017 um 10:51 schrieb Ruediger Meier: > I have two bind mounts of the same filesystem > > $ grep "/tmp" /etc/fstab > /dev/vg0/tmpdirs /mnt/tmpdirs ext4 > acl,user_xattr,usrjquota=aquota.user,grpjquota=aquota.group,jqfmt=vfsv0 > 1 2 > /mnt/tmpdirs/tmp /tmp none bind 0 0 > /mnt/tmpdirs/var/tmp /var/tmp none bind 0 0 > > > Using mv to move files between the bind mounts makes a slow copy: > > $ time mv /var/tmp/BIGFILE /tmp/ > > real 0m0.622s > user 0m0.001s > sys 0m0.621s > > > In theory mv could know somehow that's the same filesystem > and do it like this: > > $ time mv /mnt/tmpdirs/tmp/BIGFILE /mnt/tmpdirs/var/tmp/ > > real 0m0.004s > user 0m0.001s > sys 0m0.003s > > > Would it be possible to optimize mv regarding bind mounts? Apparently not, according to the rename(2) manpage: ,---- | EXDEV oldpath and newpath are not on the same mounted filesystem. | (Linux permits a filesystem to be mounted at multiple | points, but rename() does not work across different mount | points, even if the same filesystem is mounted on both.) `---- Cheers, Sven From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: L A Walsh Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Thu, 02 Mar 2017 21:18:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Sven Joachim Cc: sweet_f_a@gmx.de, 25930@debbugs.gnu.org X-Debbugs-Original-Cc: Ruediger Meier , bug-coreutils@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.14884894348257 (code B ref -1); Thu, 02 Mar 2017 21:18:01 +0000 Received: (at submit) by debbugs.gnu.org; 2 Mar 2017 21:17:14 +0000 Received: from localhost ([127.0.0.1]:37009 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjY66-000297-6A for submit@debbugs.gnu.org; Thu, 02 Mar 2017 16:17:14 -0500 Received: from eggs.gnu.org ([208.118.235.92]:35766) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjY64-00028v-LY for submit@debbugs.gnu.org; Thu, 02 Mar 2017 16:17:12 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cjY5y-00035P-CS for submit@debbugs.gnu.org; Thu, 02 Mar 2017 16:17:07 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:52316) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cjY5y-00035J-91 for submit@debbugs.gnu.org; Thu, 02 Mar 2017 16:17:06 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:54963) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cjY5x-0005hg-6P for bug-coreutils@gnu.org; Thu, 02 Mar 2017 16:17:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cjY5u-00034E-2I for bug-coreutils@gnu.org; Thu, 02 Mar 2017 16:17:05 -0500 Received: from ishtar.tlinx.org ([173.164.175.65]:49210 helo=Ishtar.sc.tlinx.org) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cjY5t-000327-PJ for bug-coreutils@gnu.org; Thu, 02 Mar 2017 16:17:01 -0500 Received: from [192.168.3.12] (Athenae [192.168.3.12]) by Ishtar.sc.tlinx.org (8.14.7/8.14.4/SuSE Linux 0.8) with ESMTP id v22LGnBY074067; Thu, 2 Mar 2017 13:16:52 -0800 Message-ID: <58B88BC1.5020307@tlinx.org> Date: Thu, 02 Mar 2017 13:16:49 -0800 From: L A Walsh User-Agent: Thunderbird MIME-Version: 1.0 References: <201703021051.40563.sweet_f_a@gmx.de> <877f48ouwq.fsf@turtle.gmx.de> In-Reply-To: <877f48ouwq.fsf@turtle.gmx.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x (no timestamps) [generic] [fuzzy] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -5.0 (-----) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -5.0 (-----) Sven Joachim wrote: > ,---- > | EXDEV oldpath and newpath are not on the same mounted filesystem. > | (Linux permits a filesystem to be mounted at multiple > | points, but rename() does not work across different mount > | points, even if the same filesystem is mounted on both.) > ---- That's unfortunate, as Windows recognizes moves between the same device and does a rename vs. a copy (i.e. it doesn't matter if the mounted object from the mount is different, as long as the rename happens between the same devices). Seems like the linux kernel should have a check for that case. (I.e. coreutils isn't likely the right place to try to fix this, since you'd want the 'rename' optimization to happen no matter what tool you used. Anyone know why Linux doesn't do detection by device vs. by mount point? Both pieces of info have their use, but for rename seems that 'by device' would be optimal. From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: Bernhard Voelker Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Thu, 02 Mar 2017 22:47:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: L A Walsh , Sven Joachim Cc: sweet_f_a@gmx.de, 25930@debbugs.gnu.org Received: via spool by 25930-submit@debbugs.gnu.org id=B25930.148849476516577 (code B ref 25930); Thu, 02 Mar 2017 22:47:02 +0000 Received: (at 25930) by debbugs.gnu.org; 2 Mar 2017 22:46:05 +0000 Received: from localhost ([127.0.0.1]:37074 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjZU5-0004JJ-0S for submit@debbugs.gnu.org; Thu, 02 Mar 2017 17:46:05 -0500 Received: from mout.kundenserver.de ([212.227.17.13]:53811) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjZU3-0004Ib-3N for 25930@debbugs.gnu.org; Thu, 02 Mar 2017 17:46:03 -0500 Received: from [192.168.101.10] ([217.87.221.1]) by mrelayeu.kundenserver.de (mreue104 [212.227.15.183]) with ESMTPSA (Nemesis) id 0LxOmo-1cD3243xfu-0170OY; Thu, 02 Mar 2017 23:45:51 +0100 References: <201703021051.40563.sweet_f_a@gmx.de> <877f48ouwq.fsf@turtle.gmx.de> <58B88BC1.5020307@tlinx.org> From: Bernhard Voelker Message-ID: Date: Thu, 2 Mar 2017 23:45:49 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.6.0 MIME-Version: 1.0 In-Reply-To: <58B88BC1.5020307@tlinx.org> Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Provags-ID: V03:K0:mn4efKBxxRfBYRUxN9gPzTMUpwvteT/R+JsBrKYog1FRV2aO6Fb jyDjRS5Uzk6VPqQRayGVIfdAh/ihu61MbXZtUaoB3a7hhCUuOVtIbAwJU3GMJkd9BDattM2 X5zktEMrd0Gbsg9oohC3eVtOuhBrwM1/SXZ62cEn3MpvlHhCFqvhr8JrN5hoJnMTOmHwg7W 8uSuoc67n5rmOT4wZtlvg== X-UI-Out-Filterresults: notjunk:1;V01:K0:TDjAGjMdn9U=:w1Hg8T4G87U+EEWW8X25tX jpZurmOHFvFz8/IkBkU2tiFTzINR0EFNkQbdY38caIqbo09ZV9mfYzhK6gCYQWj6lKx4D4SI4 An/1rlQa2tS3ODc/xfCRPQsf/C6r2QreaO9WPNSOoQT8oUkHHu3gVBjQneeCO5jwjP/2l6Ps6 bVrd8uTlZpgCEoU4ttOxyn8+5Us4YfOloZ1ykPC+f8DYlFU4q0/IWa4d45IV0XhQApJWSQAuf Dcq2jb1N/lpy5pbBNC1rcR8KcvI6Or51o0r5Hmw91UyvMv3KxR17NYBCi22R1qO+Db0E5RD+t SNZMDLJs7Dw2dDDOy2wLIPTRg6RBFwfHZ1ooKi25nuKWVwXwed87tnlaoirGlfGA9lzs6uRer 1gnv4dIqYblPYIAPzvpWY0Ab9W1DJHYim/9h3qnz+maVuybChrYO5j62Q/n1rY7XmP7sUN9na Bff/eJSh0AX/CDILdZHcpfS2bNOb59C3n+cJgU+H2gVGQH0hSsZvgALmmkRwHswTKcWDfhqf7 sfuKRuAr0zraw+X7/W4UUJVDOmAscDAQL0tf0LgKsjasm+heVupEsLHhYaZvZqW1XhASK7dkU mnqrKP3Jpv0l61bAyRTFi2ENz5Z/MKIi9Y3Eomm3uZmRPQbIvy/i/HLLcqdihkn6LTXXNSGGF YxQhM6l4xXh/djmP+9Q/2bak9mzelI82jeRaGR0j8E6vk8PRV8GEaTe5e/xCSm1MWqrXWTvDI QFJyXts5k8fKcsWo X-Spam-Score: 0.4 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: 0.4 (/) On 03/02/2017 10:16 PM, L A Walsh wrote: > Anyone know why Linux doesn't do detection by device vs. > by mount point? Both pieces of info have their use, but for rename > seems that 'by device' would be optimal. quick guess: because not only the device matters. What if e.g. the other bind mount is read-only? Have a nice day, Berny From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: L A Walsh Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Fri, 03 Mar 2017 02:25:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: Bernhard Voelker Cc: sweet_f_a@gmx.de, Sven Joachim , 25930@debbugs.gnu.org Received: via spool by 25930-submit@debbugs.gnu.org id=B25930.148850788610897 (code B ref 25930); Fri, 03 Mar 2017 02:25:01 +0000 Received: (at 25930) by debbugs.gnu.org; 3 Mar 2017 02:24:46 +0000 Received: from localhost ([127.0.0.1]:37215 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjcti-0002ph-4E for submit@debbugs.gnu.org; Thu, 02 Mar 2017 21:24:46 -0500 Received: from ishtar.tlinx.org ([173.164.175.65]:54414 helo=Ishtar.sc.tlinx.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1cjctg-0002pZ-DH for 25930@debbugs.gnu.org; Thu, 02 Mar 2017 21:24:45 -0500 Received: from [192.168.3.12] (Athenae [192.168.3.12]) by Ishtar.sc.tlinx.org (8.14.7/8.14.4/SuSE Linux 0.8) with ESMTP id v232Oa6S004796; Thu, 2 Mar 2017 18:24:38 -0800 Message-ID: <58B8D3E4.409@tlinx.org> Date: Thu, 02 Mar 2017 18:24:36 -0800 From: L A Walsh User-Agent: Thunderbird MIME-Version: 1.0 References: <201703021051.40563.sweet_f_a@gmx.de> <877f48ouwq.fsf@turtle.gmx.de> <58B88BC1.5020307@tlinx.org> In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) Bernhard Voelker wrote: > On 03/02/2017 10:16 PM, L A Walsh wrote: >> Anyone know why Linux doesn't do detection by device vs. >> by mount point? Both pieces of info have their use, but for rename >> seems that 'by device' would be optimal. > > quick guess: because not only the device matters. What if e.g. the > other bind mount is read-only? --- Not "cleanly" supported. mount man page: Note that the filesystem mount options will remain the same as those on the original mount point, and cannot be changed by passing the -o option along with --bind/--rbind. The mount options can be changed by a separate remount command, for exam- ple: mount --bind olddir newdir mount -o remount,ro newdir Note that the behavior of the remount operation depends on the /etc/mtab file. The first command stores the 'bind' flag in the /etc/mtab file and the second command reads the flag from the file. If you have a system without the /etc/mtab file or if you explicitly define source and target for the remount command (then mount(8) does not read /etc/mtab), then you have to use the bind flag (or option) for the remount command too. For example: mount --bind olddir newdir mount -o remount,ro,bind olddir newdir Note that remount,ro,bind will create a read-only mountpoint (VFS entry), but the original filesystem superblock will still be writable, meaning that the olddir will be writable, but the newdir will be read-only. ---- It's a bit bothersome that the behavior of the remount is dependent on existence of /etc/mtab, contents and mount order. Interestingly, though, on Windows, I haven't found any way of mounting a file system "Read-Only", so maybe that's not something Windows normally has to worry about in moving files. From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: Sven Joachim Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Sat, 04 Mar 2017 08:02:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: L A Walsh Cc: Ruediger Meier , 25930@debbugs.gnu.org Received: via spool by 25930-submit@debbugs.gnu.org id=B25930.148861449025092 (code B ref 25930); Sat, 04 Mar 2017 08:02:02 +0000 Received: (at 25930) by debbugs.gnu.org; 4 Mar 2017 08:01:30 +0000 Received: from localhost ([127.0.0.1]:39086 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ck4d8-0006Wd-4c for submit@debbugs.gnu.org; Sat, 04 Mar 2017 03:01:30 -0500 Received: from mout.gmx.net ([212.227.17.20]:51938) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1ck4d5-0006WP-Jw for 25930@debbugs.gnu.org; Sat, 04 Mar 2017 03:01:28 -0500 Received: from localhost.localdomain ([46.82.182.180]) by mail.gmx.com (mrgmx103 [212.227.17.168]) with ESMTPSA (Nemesis) id 0MKHik-1ckcaj3aty-001enf; Sat, 04 Mar 2017 09:01:15 +0100 Received: by localhost.localdomain (Postfix, from userid 1000) id 33FE5802AD; Sat, 4 Mar 2017 09:01:14 +0100 (CET) From: Sven Joachim References: <201703021051.40563.sweet_f_a@gmx.de> <877f48ouwq.fsf@turtle.gmx.de> <58B88BC1.5020307@tlinx.org> Date: Sat, 04 Mar 2017 09:01:14 +0100 In-Reply-To: <58B88BC1.5020307@tlinx.org> (L. A. Walsh's message of "Thu, 02 Mar 2017 13:16:49 -0800") Message-ID: <87tw7931yt.fsf@turtle.gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K0:bk7ZG96MstcGC9T4EbKE6+9v0FWnnHEuEx1tkIdGcLvVVqOZGgG X/sUHvjsw8WU0vlzf1faDega/sRjoS1sGonvcjWMMvH/KSrJlQwXT2sn53n6wW5SbbxoqBb auvdHOmTHAxny0283e+rYFdXTUzmbQ2GpLcmgYAzCVBhXjVfolUdXfRyWfFNUOINletVxx0 6HFEnuAIIZG+2pyCIKevQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:/KqVPTKDYME=:3qal6LIKM9U9iP+5qRFUUi ad7mI+S1Px6ToJDIYwJuRNp0AZwas2NfMtCdLpwwtH7j4hncBVMBr5GrgWPE93DqQrWmZ0kQo 4bAXT359/NQw0x3Lb4Xz992THcjLZ3wADIDmX/iBFfJ+2okU3ExcVr3bN6FQk6iOlMOG7+POd CxP4GWOtEXKKLdNzZzgFzS/WJ1eVNIiU0tXT2UjlGSzlFz3S6+BePOw4UfCMk4nod7gqMzmV6 IxFh22Rs9YrIGr6Dw62i7w4SOE0Va2n0DMmaabF81EZ3I5ahXaITSTqDiNCUZFe4h17zG1N5R 1/CjOm+TFCmOTbp8HQY8VM5+9ebV12hldz9mSCWY4zvuLl1MjrBYF7nocoNc3lUzNl1Dupcb9 BKRiBXvsoQFp9HtxduyC+aZBwE2nUPG7unNhnltPW70EXIixpycIrx16kIA84mB26Q/DIgUt7 HL8JF0pYnSrNtPNx7ODNrWG3Jc3voNBB416R9wwfkMnB7v7CtrtP+zARLColFC0Jg+h35UkZ0 rVx4ckoxgCD6T0EOm0VUNgbAKkgxlnne0EPgtCp//090h3ARH95oAkYhIKW92pCIuK1jhTiku sHdAMfZRQu7SA0bSC7F3HLQmIHqEUxmF4sV2AfsIXmSz6zbnu//MM1UTVpsRuMNiAT7Ca5aDO RLPRsB3N4SsKRSjVC/UwALhVNvlwG5/KTGLsZ6w+BSeWfchlYEnfviIsiDvb4N3yUlj5fIaL8 tJIbXS0QJWJY7RXiXa7RTC1FVqbW1lvsbpqIeH/GgjBjdw4gdKSZsHBFsThUTKeirnkuEVCRx HVZMmlV X-Spam-Score: -0.7 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.7 (/) On 2017-03-02 13:16 -0800, L A Walsh wrote: > Sven Joachim wrote: >> ,---- >> | EXDEV oldpath and newpath are not on the same mounted filesystem. >> | (Linux permits a filesystem to be mounted at multiple >> | points, but rename() does not work across different mount >> | points, even if the same filesystem is mounted on both.) >> > ---- > That's unfortunate, as Windows recognizes moves between > the same device and does a rename vs. a copy (i.e. it doesn't > matter if the mounted object from the mount is different, as > long as the rename happens between the same devices). Linux used to do the same in kernel 2.2, but changed the behavior when bind mounts were introduced in 2.4.0. In other words, it's deliberate. > Anyone know why Linux doesn't do detection by device vs. > by mount point? Both pieces of info have their use, but for rename > seems that 'by device' would be optimal. It is meant as a security measure, bind mounts give you the option to confine file renames and hard links to a directory subtree even if that directory does not live on its own filesystem. See this mail by Al Viro on that matter: http://yarchive.net/comp/linux/bind_mounts.html. Cheers, Sven From unknown Sun Jun 22 17:18:22 2025 X-Loop: help-debbugs@gnu.org Subject: bug#25930: optimize mv for multiple bind mounts Resent-From: Assaf Gordon Original-Sender: "Debbugs-submit" Resent-CC: bug-coreutils@gnu.org Resent-Date: Mon, 29 Oct 2018 02:51:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 25930 X-GNU-PR-Package: coreutils X-GNU-PR-Keywords: To: 25930@debbugs.gnu.org Received: via spool by 25930-submit@debbugs.gnu.org id=B25930.15407814299728 (code B ref 25930); Mon, 29 Oct 2018 02:51:01 +0000 Received: (at 25930) by debbugs.gnu.org; 29 Oct 2018 02:50:29 +0000 Received: from localhost ([127.0.0.1]:49617 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gGxdN-0002Wp-Ft for submit@debbugs.gnu.org; Sun, 28 Oct 2018 22:50:29 -0400 Received: from mail-it1-f195.google.com ([209.85.166.195]:38113) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gGxdJ-0002WP-Vc; Sun, 28 Oct 2018 22:50:26 -0400 Received: by mail-it1-f195.google.com with SMTP id i76-v6so7763327ita.3; Sun, 28 Oct 2018 19:50:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-language:content-transfer-encoding; bh=DPJoXIhPEWbvHpbMlqRRPmzBF1CmapaSQqjXBnkpcS8=; b=cUJPZvau35fWTTbIxmXnrv5ql/ZNnL27/VmaCuDu70HXMG4Jluch2nICmqCg6e8LPh xk8HIokapp37XVE5MHqsd8VJYRmEWVKN8h/ejG6FudMqtoT4uDeVvtJVpje3cMf33vOK dFXCNsYKKU8tInouqA9cwG1PqdOGaxR3mACthX0mwZnJgW7FNHg0aJNlVlDZHgPAvZlp yi+8HwCnPzeTVJ/y9Lo0VmSejCS725PQChqAhnfC6KdQMAekRXHizB43QKMKgZOSjO8m 0YUrJbwvMNIq7sQm7POB2lIslnC2R1QcQ0/zsVebM8M7UAIapqw+W6HHyDbMTCLGaedf zJOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=DPJoXIhPEWbvHpbMlqRRPmzBF1CmapaSQqjXBnkpcS8=; b=rhIzn8kzqXeR0j/6dPneXvKC/kIMT0sGu9Xy3JuVHCtpVTEjqpZxSxZbINY7ZFkOkO ROFdGIb0nDYtcChyVfo6ba+ItVgAorokLhbzAZmPOILtqhodqbx+C4f7GdYBjVpqBdNV sAWbVuqvtPJhFcwL0UWmoQ5ZHQgm9DZAsIeNuMv8bRRO8MG1zhCtPorkzqj/HmAbZwC+ VU/UbG8SBHfsFxB9q/hSLZTuF8t4Sgeg16D4V4RNfh5eXwk60/KlXxFsIC+uCbHgnpmT gGGE5mZ2II4r7y6VnZm5CS3+uTanWPhJbgt/myEozvzUqH3++Ym4XT/eJz3nHZnf2SeX yCQg== X-Gm-Message-State: AGRZ1gKPh3TaEvlqhxqr2cTvAVXqSiVNggbFzFkW4AhTrU0+DQF+Hkxv /4cqDf8/9g0JnjM/3agVzhtHPB1Ghos= X-Google-Smtp-Source: AJdET5fHu9glNLBWlvpI6tt2ldwv50cmgHzZS98PzowUGGb8+RcmsKQ5Ru9r6WKT/hxd5aiMiZI6vQ== X-Received: by 2002:a24:b8c5:: with SMTP id m188-v6mr8984869ite.27.1540781419882; Sun, 28 Oct 2018 19:50:19 -0700 (PDT) Received: from tomato.housegordon.com (moose.housegordon.com. [184.68.105.38]) by smtp.googlemail.com with ESMTPSA id e78-v6sm6489549itc.4.2018.10.28.19.50.18 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Sun, 28 Oct 2018 19:50:18 -0700 (PDT) References: <201703021051.40563.sweet_f_a@gmx.de> <877f48ouwq.fsf@turtle.gmx.de> <58B88BC1.5020307@tlinx.org> <87tw7931yt.fsf@turtle.gmx.de> From: Assaf Gordon Message-ID: Date: Sun, 28 Oct 2018 20:50:17 -0600 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: <87tw7931yt.fsf@turtle.gmx.de> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Score: -0.0 (/) X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) close 25930 stop (triaging old bugs) On 2017-03-04 1:01 a.m., Sven Joachim wrote: > On 2017-03-02 13:16 -0800, L A Walsh wrote: > >> Sven Joachim wrote: >>> ,---- >>> | EXDEV oldpath and newpath are not on the same mounted filesystem. >>> | (Linux permits a filesystem to be mounted at multiple >>> | points, but rename() does not work across different mount >>> | points, even if the same filesystem is mounted on both.) >>> >> ---- >> That's unfortunate, as Windows recognizes moves between >> the same device and does a rename vs. a copy (i.e. it doesn't >> matter if the mounted object from the mount is different, as >> long as the rename happens between the same devices). > > Linux used to do the same in kernel 2.2, but changed the behavior when > bind mounts were introduced in 2.4.0. In other words, it's deliberate. > Given the above (kernel limitation), I'm closing this bug. Discussion can continue by replying to this thread. -assaf