From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-3.0 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_DNSWL_MED,RCVD_IN_MSPIKE_H3, RCVD_IN_MSPIKE_WL autolearn=ham autolearn_force=no version=3.4.2 Received: from mother.openwall.net (mother.openwall.net [195.42.179.200]) by inbox.vuxu.org (OpenSMTPD) with SMTP id fca450bd for ; Wed, 12 Feb 2020 20:57:03 +0000 (UTC) Received: (qmail 14002 invoked by uid 550); 12 Feb 2020 20:57:01 -0000 Mailing-List: contact musl-help@lists.openwall.com; run by ezmlm Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-ID: Reply-To: musl@lists.openwall.com Received: (qmail 13978 invoked from network); 12 Feb 2020 20:57:00 -0000 Date: Wed, 12 Feb 2020 15:56:46 -0500 From: Rich Felker To: "A. Wilcox" Cc: musl@lists.openwall.com Message-ID: <20200212205646.GG1663@brightrain.aerifal.cx> References: <87ftg7k1at.fsf@oldenburg2.str.redhat.com> <20200122144243.GZ30412@brightrain.aerifal.cx> <87a76fjzpx.fsf@oldenburg2.str.redhat.com> <20200122220515.GH30412@brightrain.aerifal.cx> <38d0e03d-4718-8085-4474-981fdef9b4b8@cs.ucla.edu> <87zhdonhxg.fsf@mid.deneb.enyo.de> <20200212130555.GX1663@brightrain.aerifal.cx> <20200212190742.GZ1663@brightrain.aerifal.cx> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Sender: Rich Felker Subject: Re: bug#39236: [musl] coreutils cp mishandles error return from lchmod On Wed, Feb 12, 2020 at 01:59:09PM -0600, A. Wilcox wrote: > On 12/02/2020 13:07, Rich Felker wrote: > > On Wed, Feb 12, 2020 at 08:05:55AM -0500, Rich Felker wrote: > >> On Wed, Feb 12, 2020 at 12:50:19PM +0100, Florian Weimer wrote: > >>> * Paul Eggert: > >>> > >>>> On 1/22/20 2:05 PM, Rich Felker wrote: > >>>>> I think we're approaching a consensus that glibc should fix this too, > >>>>> so then it would just be gnulib matching the fix. > >>>> > >>>> I installed the attached patch to Gnulib in preparation for the upcoming > >>>> glibc fix. The patch causes fchmodat with AT_SYMLINK_NOFOLLOW to work on > >>>> non-symlinks, and similarly for lchmod on non-symlinks. The idea is to > >>>> avoid this sort of problem in the future, and to let Coreutils etc. work > >>>> on older platforms as if glibc 2.32 (or whatever) is already in place. > >>> > >>> The lchmod implementation based on /proc tickles an XFS bug: > >>> > >>> > >> > >> Uhg, why does Linux even let the fs driver see whether the chmod is > >> being performed via a filename, O_PATH fd, or magic symlink in /proc? > >> It should just be an operation on the inode. > > > > OK, I don't think it's actually clear from the test that the use of > > the magic symlink is the cause. It's plausible that XFS just always > > returns failure on success for this operation, and I don't have XFS to > > test with. > > > My root fs is XFS, but I only have musl to test with. Is there a test > case I can run on musl to determine the behaviour of XFS for you? > > The only glibc distribution that supports my platform is Void, so I > don't know if the Void glibc spin in a chroot would be sufficient if > there is no way to do this from a musl system. We've since found (in the other thread musl list isn't CC'd on) that this does not seem to be XFS-specific but happens in ext4 too, and is probably a high level vfs bug. Rich