bug-tar
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-tar] GNU Tar 1.28 configuration test for deep directory hierarchy f


From: Jonathan Leffler
Subject: [Bug-tar] GNU Tar 1.28 configuration test for deep directory hierarchy failing on Mac OS X 10.11 El Capitan
Date: Mon, 12 Oct 2015 14:00:59 -0700


I need to install GNU tar on Mac OS X 10.11 so I've tried both 1.28 and 1.26, but they're both failing in a most unusual way.

On Yosemite (10.10), the tests include:

checking whether getcwd handles long file names properly... no, but it is partly working
checking for getpagesize... yes
checking whether getcwd aborts when 4k < cwd_length < 16k... yes
checking for working getdelim function... yes
checking whether getdtablesize works... yes


When I run configure on 10.11, the 'checking whether getcwd aborts when 4k < cwd_length < 16k' test fails badly.

First of all, it creates a deep chain of directories with the name 'confdir-14B---' at each level.  Then the creation process fails at a rather deep nesting level.  At this point, tools such as Bash have problems processing the directory name.  And, worse still, the directory chain can't be removed.  I wrote a script to 'cd' to the bottom level.  One time, down to level 30, it worked without errors being reported.  From level 31, I got the report 'cd: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory'.  One (of three) attempts, it stopped at level 119.  Another time, it didn't generate errors until level 183, and didn't stop until level 271.  Another time, it seemed to go much deeper, to over 1000 levels.

When I tried to clean the directories up, I'd get messages about 'rmdir: confdir-14B---: No space left on device', or directory not empty.  Running ls showed an empty directory; cd .. and then rmdir would give the message.  Using 'rm -fr', even with root privileges, didn't help.


I was able to move the directories to Trash with Finder, but I can't clean up the trash; it fails on these three directory hierarchies.

I even tried writing my own crude `rmdir` program (basically, it runs the rmdir(2) system call on each argument — just like the regular one) and it failed the same way as the installed one.


Questions arising:

1. Has anyone else seen anything similar on El Capitan?
2. Does anyone have an idea how to get rid of the trashed directories?
3. How can we modify the test so it doesn't fail catastrophically like this on El Capitan?
4. Do I need to report a bug to Apple separately from this report to GNU Tar?


Background info on machine and compiler:

The machine in question is a mid-2011 17" MacBook Pro with a 750 GB disk drive and 16 GiB RAM.  Other than this, the machine seems to be working OK (though the SIP — System Integrity Protection — feature of El Capitan is giving me grief; I'm having to recompile programs like tar because I can no longer have them installed in /usr/gnu64/).  It did take a couple of attempts to get El Capitan installed on this machine — there's an outside chance that it is a problem on my machine specifically (though I rate that as a low probability).  I've not yet tried recompiling GNU Tar on the other (mid-2009) MacBook Pro that upgraded to El Capitan with no problems, but I'll do so if need so be.  I have the terminal trace saved, which may or may not be useful.

I was compiling with XCode 7.0.1 (one of the goals of recompiling tar is to unpack one of the pre-requisites for rebuilding GCC so I can rebuild GCC).

I rebuilt GNU Tar 1.28 on a 10.10.5 Yosemite machine (MacBook Pro (Retina, 13-inch, Early 2015)) with XCode 7.0.1 today without this problem.  Whatever is going on seems to be related to El Capitan — or something else associated with that machine.

(I attempted to subscribe to address@hidden earlier; I've not received a response yet, which doesn't surprise me since this seems to be a low-volume list as befits a stable, mature product like GNU Tar.)

--
Jonathan Leffler <address@hidden>  #include <disclaimer.h>
Guardian of DBD::Informix - v2015.0826 - http://dbi.perl.org
"Blessed are we who can laugh at ourselves, for we shall never cease to be amused."

reply via email to

[Prev in Thread] Current Thread [Next in Thread]