[Virtual-pkg-base-maintainers] Bug#604013: base: "ls -al" on armel inside loopback mounted ISO image failes with -1 ENOMEM
Robert Heinzmann
bugs at elconas.de
Fri Nov 19 11:12:01 UTC 2010
Package: base
Severity: normal
** Please type your report below this line ***
I'm running Debian on Seagate Dockstar (Kirkwood platform). When I mount a ISO image via loopback (mount -o loop myfile.iso /mnt) a ls inside this mounted tree (ls -al /mnt/) failes with "Cannot allocate memory".
This is a test on the Kirkwood machine:
----
root at dockstar:/srv/tftp# md5sum systemrescuecd-x86-1.6.2.iso
b7662eb44b530d62c487dd367f2036ed systemrescuecd-x86-1.6.2.iso
root at dockstar:/srv/tftp# uname -a
Linux dockstar.lab.elconas.de 2.6.32-5-kirkwood #1 Sat Sep 18 15:20:08 UTC 2010 armv5tel GNU/Linux
root at dockstar:/srv/tftp# mount -o loop systemrescuecd-x86-1.6.2.iso sysrescuecd
root at dockstar:/srv/tftp# ls -al sysrescuecd
ls: cannot access sysrescuecd/bootdisk: Cannot allocate memory
ls: cannot access sysrescuecd/bootprog: Cannot allocate memory
ls: cannot access sysrescuecd/isolinux: Cannot allocate memory
ls: cannot access sysrescuecd/ntpasswd: Cannot allocate memory
ls: cannot access sysrescuecd/sysrcd.dat: Cannot allocate memory
ls: cannot access sysrescuecd/sysrcd.md5: Cannot allocate memory
ls: cannot access sysrescuecd/usb_inst: Cannot allocate memory
ls: cannot access sysrescuecd/usb_inst.sh: Cannot allocate memory
ls: cannot access sysrescuecd/usbstick.htm: Cannot allocate memory
ls: cannot access sysrescuecd/version: Cannot allocate memory
total 6
dr-xr-xr-x 1 root root 2048 Oct 11 20:09 .
drwxr-xr-x 22 tftp nogroup 4096 Nov 19 11:38 ..
?????????? ? ? ? ? ? bootdisk
?????????? ? ? ? ? ? bootprog
?????????? ? ? ? ? ? isolinux
?????????? ? ? ? ? ? ntpasswd
?????????? ? ? ? ? ? sysrcd.dat
?????????? ? ? ? ? ? sysrcd.md5
?????????? ? ? ? ? ? usb_inst
?????????? ? ? ? ? ? usb_inst.sh
?????????? ? ? ? ? ? usbstick.htm
?????????? ? ? ? ? ? version
dmesg ...
[49412.581257] ISO 9660 Extensions: Microsoft Joliet Level 3
[49412.581340] ISOFS: changing to secondary root
root at dockstar:/srv/tftp# ldd /bin/ls
libselinux.so.1 => /lib/libselinux.so.1 (0x40005000)
librt.so.1 => /lib/librt.so.1 (0x40026000)
libacl.so.1 => /lib/libacl.so.1 (0x40036000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40044000)
libc.so.6 => /lib/libc.so.6 (0x40058000)
libdl.so.2 => /lib/libdl.so.2 (0x40188000)
/lib/ld-linux.so.3 (0x2a000000)
libpthread.so.0 => /lib/libpthread.so.0 (0x40193000)
libattr.so.1 => /lib/libattr.so.1 (0x401b3000)
root at dockstar:/srv/tftp# file /bin/ls
/bin/ls: ELF 32-bit LSB executable, ARM, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
root at dockstar:/srv/tftp# strace ls -al sysrescuecd/ntpasswd
.....
open("/proc/filesystems", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x4001e000
read(3, "nodev\tsysfs\nnodev\trootfs\nnodev\tb"..., 1024) = 286
read(3, "", 1024) = 0
close(3) = 0
munmap(0x4001e000, 4096) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=57, ws_col=190, ws_xpixel=0, ws_ypixel=0}) = 0
lstat64("sysrescuecd/ntpasswd", 0x280b0) = -1 ENOMEM (Cannot allocate memory)
write(2, "ls: ", 4ls: ) = 4
write(2, "cannot access sysrescuecd/ntpass"..., 34cannot access sysrescuecd/ntpasswd) = 34
write(2, ": Cannot allocate memory", 24: Cannot allocate memory) = 24
write(2, "\n", 1
) = 1
close(1) = 0
close(2) = 0
exit_group(2) = ?
-----
When I do the same thing on normal x86_64 everything is ok:
----
debian:/# md5sum systemrescuecd-x86-1.6.2.iso
b7662eb44b530d62c487dd367f2036ed systemrescuecd-x86-1.6.2.iso
debian:/# uname -a
Linux debian 2.6.32-5-amd64 #1 SMP Fri Sep 17 21:50:19 UTC 2010 x86_64 GNU/Linux
debian:/# mount -o loop /systemrescuecd-x86-1.6.2.iso /mnt/test/
debian:/# ls -al /mnt/test
insgesamt 227894
dr-xr-xr-x 1 root root 2048 11. Okt 20:09 .
drwxr-xr-x 9 root root 4096 11. Nov 12:26 ..
dr-xr-xr-x 1 root root 2048 11. Jun 21:15 bootdisk
dr-xr-xr-x 1 root root 2048 26. Mai 09:07 bootprog
dr-xr-xr-x 1 root root 2048 11. Okt 20:10 isolinux
dr-xr-xr-x 1 root root 2048 2. Mär 2010 ntpasswd
-r-xr-xr-x 1 root root 233328640 11. Okt 20:09 sysrcd.dat
-r-xr-xr-x 1 root root 45 11. Okt 20:09 sysrcd.md5
dr-xr-xr-x 1 root root 2048 28. Jun 21:35 usb_inst
-r-xr-xr-x 1 root root 15672 25. Sep 23:20 usb_inst.sh
-r-xr-xr-x 1 root root 877 25. Sep 23:20 usbstick.htm
-r-xr-xr-x 1 root root 6 11. Okt 20:09 version
dmsg ...
[239067.031523] ISO 9660 Extensions: Microsoft Joliet Level 3
[239067.031570] ISOFS: changing to secondary root
----
As you can see from md5sum, the file content is the same. I suspect a problem in loop or VFS ?
Regards,
Robert
-- System Information:
Debian Release: squeeze/sid
APT prefers testing
APT policy: (500, 'testing')
Architecture: armel (armv5tel)
Kernel: Linux 2.6.32-5-kirkwood
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/dash
More information about the Virtual-pkg-base-maintainers
mailing list