Hello list,
I've been experimenting with large (500Mb) initramfs cpio archives on
linux, x86_64, using cpio 2.7, compiled 64bit with gcc4.1.1.
If I create a cpio archive, then extract it and compare with the
original, I see broken symlinks.
I don't know if the archives themselves are corrupt, or whether the
extraction code is broken, but I guess you guys can work that out.
An example:
[EMAIL PROTECTED] initramfs $ cd rootfs
[EMAIL PROTECTED] rootfs $ find . | cpio -o -H newc > ../rootfs.cpio
857030 blocks
[EMAIL PROTECTED] rootfs $ cd ..
[EMAIL PROTECTED] initramfs $ mkdir tmp
[EMAIL PROTECTED] initramfs $ cd tmp
[EMAIL PROTECTED] tmp $ cpio -i -d -H newc -F ../rootfs.cpio
--no-absolute-filenames
857030 blocks
[EMAIL PROTECTED] tmp $ ll ../rootfs/pkg/linux/lib/modules/2.6.19.2/
total 1.1M
lrwxrwxrwx 1 root root 17 Jan 11 13:39 build -> /pkg/linux/source
drwxrwxr-x 11 root root 4.0K Jan 11 11:14 kernel
-rw-rw-r-- 1 root root 229K Jan 11 11:14 modules.alias
-rw-rw-r-- 1 root root 69 Jan 11 11:14 modules.ccwmap
-rw-rw-r-- 1 root root 246K Jan 11 11:14 modules.dep
-rw-rw-r-- 1 root root 813 Jan 11 11:14 modules.ieee1394map
-rw-rw-r-- 1 root root 788 Jan 11 11:14 modules.inputmap
-rw-rw-r-- 1 root root 2.6K Jan 11 11:14 modules.isapnpmap
-rw-rw-r-- 1 root root 74 Jan 11 11:14 modules.ofmap
-rw-rw-r-- 1 root root 161K Jan 11 11:14 modules.pcimap
-rw-rw-r-- 1 root root 967 Jan 11 11:14 modules.seriomap
-rw-rw-r-- 1 root root 100K Jan 11 11:14 modules.symbols
-rw-rw-r-- 1 root root 306K Jan 11 11:14 modules.usbmap
lrwxrwxrwx 1 root root 17 Jan 11 13:39 source -> /pkg/linux/source
[EMAIL PROTECTED] tmp $ ll pkg/linux/lib/modules/2.6.19.2/
total 1.1M
lrwxrwxrwx 1 root root 23 Jan 12 12:08 build -> /pkg/linux/sourceodules
drwxrwxr-x 11 root root 4.0K Jan 12 12:08 kernel
-rw-rw-r-- 1 root root 229K Jan 12 12:08 modules.alias
-rw-rw-r-- 1 root root 69 Jan 12 12:08 modules.ccwmap
-rw-rw-r-- 1 root root 246K Jan 12 12:08 modules.dep
-rw-rw-r-- 1 root root 813 Jan 12 12:08 modules.ieee1394map
-rw-rw-r-- 1 root root 788 Jan 12 12:08 modules.inputmap
-rw-rw-r-- 1 root root 2.6K Jan 12 12:08 modules.isapnpmap
-rw-rw-r-- 1 root root 74 Jan 12 12:08 modules.ofmap
-rw-rw-r-- 1 root root 161K Jan 12 12:08 modules.pcimap
-rw-rw-r-- 1 root root 967 Jan 12 12:08 modules.seriomap
-rw-rw-r-- 1 root root 100K Jan 12 12:08 modules.symbols
-rw-rw-r-- 1 root root 306K Jan 12 12:08 modules.usbmap
lrwxrwxrwx 1 root root 23 Jan 12 12:08 source -> /pkg/linux/sourceodules
[EMAIL PROTECTED] tmp $
The extra 'odules is suspiciously like 'modules'...
I am now using version 2.6 with debian patches to 2.6-17, and this works
fine. I've tried making a small test case, but it only seems to occur
with my large (500Mb) root filesystem archives. I f I just archive the
modules directory in the example above, the corruption does not occur.
Anyhow; if I can do anything to chase this down further, let me know. I
have joined the ML.
Andrew Walrond
_______________________________________________
Bug-cpio mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-cpio