[cfe-dev] C++ Module failures on ARM

Renato Golin renato.golin at linaro.org
Fri Apr 17 03:15:15 PDT 2015


On 17 April 2015 at 00:47, Richard Smith <richard at metafoo.co.uk> wrote:
> Odd. I'd guess that archive-update.test is going to be the easiest of these
> to debug. Is it the final command that's failing? Can you find out what
> timestamp llvm-ar thinks the relevant files have?

Ha! Found it, thanks!!

I managed to get a script that always fails by fudging the
archive-update.test.script with dumps.

The output of a normal run is:

  File: ‘archive-update.test.tmp.newer/evenlen’
  Size: 6         Blocks: 8          IO Block: 4096   regular file
Device: 804h/2052d Inode: 32638159    Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/  linaro)   Gid: ( 1000/  linaro)
Access: 2015-04-17 11:09:21.529709000 +0100
Modify: 2015-04-17 11:09:21.529709000 +0100
Change: 2015-04-17 11:09:21.529709000 +0100
 Birth: -
  File: ‘archive-update.test.tmp.older/evenlen’
  Size: 6         Blocks: 8          IO Block: 4096   regular file
Device: 804h/2052d Inode: 32768202    Links: 1
Access: (0600/-rw-------)  Uid: ( 1000/  linaro)   Gid: ( 1000/  linaro)
Access: 2000-01-01 00:00:00.000000000 +0000
Modify: 2000-01-01 00:00:00.000000000 +0000
Change: 2015-04-17 11:09:21.519709000 +0100
 Birth: -

while the broken machine has:

  File: ‘archive-update.test.tmp.newer/evenlen’
  Size: 6         Blocks: 8          IO Block: 4096   regular file
Device: 804h/2052d Inode: 28579614    Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 1000/  linaro)   Gid: ( 1000/  linaro)
Access: 1970-01-17 02:07:14.312737000 +0100
Modify: 1970-01-17 02:07:14.312737000 +0100
Change: 1970-01-17 02:07:14.312737000 +0100
 Birth: -
  File: ‘archive-update.test.tmp.older/evenlen’
  Size: 6         Blocks: 8          IO Block: 4096   regular file
Device: 804h/2052d Inode: 28573869    Links: 1
Access: (0664/-rw-rw-r--)  Uid: ( 1000/  linaro)   Gid: ( 1000/  linaro)
Access: 2000-01-01 00:00:00.000000000 +0000
Modify: 2000-01-01 00:00:00.000000000 +0000
Change: 1970-01-17 02:07:14.302737000 +0100

Note the peace lover machine really loves the 70's... :)

I think it has to do with the fact that the script uses && between
statements and the filesystem only updates the changes after all of
them are done, unless you touch with a specific date and time, it
seems. When I run it manually, it works because the file is, then,
with the correct timestamp.

All in all, broken file system. I've seen this before in this machine
and I think I know how to fix it.

Thanks for the help!
--renato




More information about the cfe-dev mailing list