Re: 2.3.48: ext2 strange problems. can't remove files.

From: nabbasi@pacbell.net
Date: Thu Mar 09 2000 - 16:40:00 EST


update:

things look better now.

I did umount on the disk, but PC hanged, had to hard reboot
.
when I rebooted, I did fsck, and I answered yes to zillion
questions. Now, I only got one file that is in that strange
state.

one of the questions asked was:

File system contains large files but lacks LARGE_FILES flag
in superblock. fix? <y>

any way, now things look OK. as I said before, the disk
was mounted OK with no errors, but fsck fixed whatever
the problem was.

thanks fsck.

nasser

nabbasi@pacbell.net wrote:
>
>
> Hello,
>
> I ftp'ed some large tar files (binary transfer) to my Linux box.
>
> Extracted files. Now some of the files extraced (very few), seem
> to be in strange state. I can't delete them, can't stat them,
> and can not remove the directory they are in. less than 1% of
> the files extraced seem to be hosed like this. Any idea
> how to force remove these files? This is Suse 6.3, but I have
> upgraded kernel to 2.3.48.
>
> I'll next run fsck on this disk to see if it will help. (even
> though I get no error when I mount it).
>
> the disk is a maxtor 34 GB disk, running off a promise ata
> 66 IDE card. This is the disk (/dev/hdh1) :
>
> hdh: Maxtor 93652U8, 34837MB w/2048kB Cache, CHS=70780/16/63
> hdh: [PTBL] [4441/255/63] hdh1
>
> no problem using the disk, other than the probkem with
> some of these files being corrupted somehow..
>
> This is the dmesg output, followed by examples of trying to
> remove the file.
>
> ------ dmesg --------
>
> EXT2-fs error (device ide3(34,65)): ext2_free_blocks: Freeing blocks not
> in datazone - block = 2175008768, count = 1
> EXT2-fs error (device ide3(34,65)): ext2_free_blocks: Freeing blocks not
> in datazone - block = 32768000, count = 1
> EXT2-fs error (device ide3(34,65)): ext2_free_blocks: Freeing blocks not
> in datazone - block = 372244480, count = 1
> attempt to access beyond end of device
> 22:41: rw=0, want=2052849668, limit=35664268
> EXT2-fs error (device ide3(34,65)): trunc_indirect: Read failure,
> inode=2550916, block=-1634271232
> attempt to access beyond end of device
> 22:41: rw=0, want=1662779396, limit=35664268
> EXT2-fs error (device ide3(34,65)): trunc_dindirect: Read failure,
> inode=2550916, block=952565760
> attempt to access beyond end of device
> 22:41: rw=0, want=1745879044, limit=35664268
> EXT2-fs error (device ide3(34,65)): trunc_tindirect: Read failure,
> inode=2550916, block=436469760
>
> ------------------------
>
> now trying to rm the file....
>
> lib/html > uname -a
> Linux linux 2.3.48 #3 SMP Mon Mar 6 02:58:48 PST 2000 i686 unknown
>
> lib/html > ls -l
> ls: headparser.html: Input/output error
> total 0
>
> lib/html > rm headparser.html
> rm: cannot remove `headparser.html': Input/output error
>
> lib/html > cd ..
>
> lib > rm -rf html
> rm: cannot remove `html/headparser.html': Input/output error
> rm: cannot remove directory `html': Directory not empty
>
> lib > ls html
> headparser.html
>
> lib > du html
> du: html/headparser.html: Input/output error
> 4 html
>
> lib > rm html/headparser.html
> rm: cannot remove `html/headparser.html': Input/output error
>
>
> This is the strace output of the above command:
>
> nabbasi@linux:~/sfu/sfub2rp/perl/html/site/lib > strace rm
> html/headparser.html
> execve("/bin/rm", ["rm", "html/headparser.html"], [/* 66 vars */]) = 0
> brk(0) = 0x804dac4
> open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
> directory)
> open("/etc/ld.so.cache", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=55194, ...}) = 0
> mmap(NULL, 55194, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
> close(3) = 0
> open("/lib/libc.so.6", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0755, st_size=4223971, ...}) = 0
> read(3, "\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0\200\204"...,
> 4096) = 4096
> mmap(NULL, 1025596, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x40023000
> mprotect(0x40116000, 30268, PROT_NONE) = 0
> mmap(0x40116000, 16384, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
> 0xf2000) = 0x40116000
> mmap(0x4011a000, 13884, PROT_READ|PROT_WRITE,
> MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4011a000
> close(3) = 0
> mprotect(0x40023000, 995328, PROT_READ|PROT_WRITE) = 0
> mprotect(0x40023000, 995328, PROT_READ|PROT_EXEC) = 0
> munmap(0x40015000, 55194) = 0
> personality(PER_LINUX) = 0
> getpid() = 593
> brk(0) = 0x804dac4
> brk(0x804dafc) = 0x804dafc
> brk(0x804e000) = 0x804e000
> open("/usr/share/locale/locale.alias", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=2174, ...}) = 0
> mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0)
> = 0x40015000
> read(3, "# Locale name alias data base.\n#"..., 4096) = 2174
> brk(0x804f000) = 0x804f000
> read(3, "", 4096) = 0
> close(3) = 0
> munmap(0x40015000, 4096) = 0
> open("/usr/share/i18n/locale.alias", O_RDONLY) = -1 ENOENT (No such file
> or directory)
> open("/usr/share/locale/en_US/LC_MESSAGES", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
> close(3) = 0
> open("/usr/share/locale/en_US/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) =
> 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=44, ...}) = 0
> mmap(NULL, 44, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40015000
> close(3) = 0
> open("/usr/share/locale/en_US/LC_MONETARY", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=93, ...}) = 0
> mmap(NULL, 93, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40016000
> close(3) = 0
> open("/usr/share/locale/en_US/LC_COLLATE", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=29970, ...}) = 0
> mmap(NULL, 29970, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40017000
> close(3) = 0
> open("/usr/share/locale/en_US/LC_TIME", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=508, ...}) = 0
> mmap(NULL, 508, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4001f000
> close(3) = 0
> open("/usr/share/locale/en_US/LC_NUMERIC", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=27, ...}) = 0
> mmap(NULL, 27, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40020000
> close(3) = 0
> open("/usr/share/locale/en_US/LC_CTYPE", O_RDONLY) = 3
> fstat(3, {st_mode=S_IFREG|0644, st_size=10428, ...}) = 0
> mmap(NULL, 10428, PROT_READ, MAP_PRIVATE, 3, 0) = 0x4011e000
> close(3) = 0
> ioctl(0, TCGETS, {B9600 opost isig icanon echo ...}) = 0
> brk(0x8050000) = 0x8050000
> brk(0x8051000) = 0x8051000
> lstat("html/headparser.html", 0xbffff350) = -1 EIO (Input/output error)
> brk(0x8052000) = 0x8052000
> open("/usr/share/locale/en_US/LC_MESSAGES/fileutils.mo", O_RDONLY) = -1
> ENOENT (No such file or directory)
> open("/usr/share/locale/en/LC_MESSAGES/fileutils.mo", O_RDONLY) = -1
> ENOENT (No such file or directory)
> write(2, "rm: ", 4rm: ) = 4
> write(2, "cannot remove `html/headparser.h"..., 36cannot remove
> `html/headparser.html') = 36
> open("/usr/share/locale/en_US/LC_MESSAGES/libc.mo", O_RDONLY) = -1
> ENOENT (No such file or directory)
> open("/usr/share/locale/en/LC_MESSAGES/libc.mo", O_RDONLY) = -1 ENOENT
> (No such file or directory)
> write(2, ": Input/output error", 20: Input/output error) = 20
> write(2, "\n", 1
> ) = 1
> _exit(1) = ?
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.rutgers.edu
> Please read the FAQ at http://www.tux.org/lkml/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Mar 15 2000 - 21:00:16 EST