On 04/18/18 15:00, Rich Felker wrote: > On Thu, Jul 06, 2017 at 02:50:16PM +0100, Adam Hill wrote: >> Hi, >> >> Not carried out ANY investigation around this... unfortunately I >> don't have any time atm. Could also have been mentioned already or >> actually be a bug in tar itself etc. but I couldn't find anything >> with my quick search. Just thought I'd mention it in case anyone >> does feel inclined to investigate. >> >> I compiled OpenWrt using pretty much default build settings for an >> octeon chip... it uses musl-1.1.16. The only real change I made was >> to use GNU tar rather than busybox. The resulting tar binary can't >> fix the modification/access times on any extracted symbolic links, >> resulting in for example: >> >> tar: usr/share/zoneinfo/Africa: Cannot utime: Invalid argument >> >> I didn't have strace available so can't even be sure tar's using >> utime()... just going by the error message alone. >> >> I recompiled OpenWrt changing only the C library ( to GCC ) and the >> resulting tar binary worked fine... so I can only *assume* it's >> something to do with musl. > > Did anyone ever get a chance to look further into this? It's been on > my todo for a long time, but without sufficient information to > reproduce I don't know where to begin. I spent about 20 minutes > looking at the musl and kernel code now and it does not seem likely > that this is mips64-specific. > > Rich > This really sounds like broken cross-compiling. When we cross-compile cp, it's unable to handle xattrs until it's re-compiled on native hardware. I'd suggest poking around at autoconf for GNU tar and seeing what it is 'guessing' the environment is like, and perhaps overriding some with ac_*={yes,no} on the configure line. Best, --arw -- A. Wilcox (awilfox) Project Lead, Adélie Linux http://adelielinux.org