Messages in this thread |  | | Date | Thu, 26 Dec 1996 13:46:10 -0500 (EST) | From | "Richard B. Johnson" <> | Subject | MS_DOS file system problem |
| |
I am using an ADA-2940. Everything works fine with an ext2 filesystem. However any attempt to execute 'ls' upon a mounted MS-DOS file-system results in a panic. The panic messages include attempts to kill interrupt handlers, kfree of non-kmallocked memory, etc. Of course I can't get any such errors saved to the file system.
In an attempt to find the trouble, I hacked scsi.c to prevent reentry of internal_cmd() and scsi_done() which were blowing up due to multiple reentry from lower-level code. The idea was to prevent a complete crash. This was not intended to be any sort of a fix.
The result was that I was finally able to get some error messages that made some sense......... filesystem panic(dev 80:01) FAT error Directory 4374 : bad FAT Filesystem panic(dev 80:01, mounted on 08:11:191994) Fat_free: deleting beyond EOF. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ This actually WROTE to the disk, destroying an entire directory tree!
It looks as though the Disk is being asked to read data beyond the end of the physical media and that the file-system thinks that the FAT is bad. However, MS-DOS's 'chkdsk' and 'scandisk' do not think anything is wrong with the file system.
Volume DRIVE_C created 09-10-1996 3:22p Volume Serial Number is 2139-10D8
567,345,152 bytes total disk space 98,304 bytes in 2 hidden files 1,703,936 bytes in 103 directories 94,044,160 bytes in 2,751 user files 471,498,752 bytes available on disk
16,384 bytes in each allocation unit 34,628 total allocation units on disk 28,778 available allocation units on disk
655,360 total bytes memory 626,704 bytes free
Instead of using CHKDSK, try using SCANDISK. SCANDISK can .......
Note that this is a LARGE MS-DOS file-system. Maybe there is some problem after 536,870,912 bytes?? (1/2 megabyte * 1024)
Another strange symptom is that if I use 'echo *' instead of 'ls', I can read every directory entry on the disk. I temporarily removed my color ls so I could use bash's built-in ls. I still get the crash. I think that 'echo *' doesn't stat() the file and the other stuff does so the thing that percipitates the crash is the stat() call to get the directory info.
This is the error-free startup.
Dec 26 12:09:41 chaos kernel: Console: 16 point font, 400 scans Dec 26 12:09:41 chaos kernel: Console: colour VGA+ 80x25, 1 virtual console (max 63) Dec 26 12:09:41 chaos kernel: pcibios_init : BIOS32 Service Directory structure at 0xc00fcb80 Dec 26 12:09:41 chaos kernel: pcibios_init : BIOS32 Service Directory entry at 0xf7972 Dec 26 12:09:41 chaos kernel: pcibios_init : PCI BIOS revision 2.10 entry at 0xf7b5a Dec 26 12:09:41 chaos kernel: Probing PCI hardware. Dec 26 12:09:41 chaos kernel: Calibrating delay loop.. ok - 66.15 BogoMIPS Dec 26 12:09:41 chaos kernel: Memory: 14608k/16384k available (864k kernel code, 384k reserved, 528k data) Dec 26 12:09:41 chaos kernel: Swansea University Computer Society TCP/IP for NET3.037 Dec 26 12:09:41 chaos kernel: IP Protocols: IGMP, ICMP, UDP, TCP, IPIP Dec 26 12:09:41 chaos kernel: Checking 386/387 coupling... Ok, fpu using exception 16 error reporting. Dec 26 12:09:41 chaos kernel: Checking 'hlt' instruction... Ok. Dec 26 12:09:41 chaos kernel: Linux version 2.1.16 (root@chaos) (gcc version 2.7.2) #7 Thu Dec 26 11:55:05 EST 1996 Dec 26 12:09:41 chaos kernel: POSIX conformance testing by UNIFIX Dec 26 12:09:41 chaos kernel: Real Time Clock Driver v1.07 Dec 26 12:09:41 chaos kernel: Started kswapd v 1.4.2.2 Dec 26 12:09:41 chaos kernel: AHA-2940 (PCI-bus), I/O 0xf800, Mem 0xfbfff000: Dec 26 12:09:41 chaos kernel: irq 9 Dec 26 12:09:41 chaos kernel: bus release time 40 bclks Dec 26 12:09:41 chaos kernel: data fifo threshold 100 Dec 26 12:09:41 chaos kernel: SCSI CHANNEL A: Dec 26 12:09:41 chaos kernel: scsi id 7 Dec 26 12:09:41 chaos kernel: scsi selection timeout 256 ms Dec 26 12:09:41 chaos kernel: scsi bus reset at power-on enabled Dec 26 12:09:41 chaos kernel: scsi bus parity enabled Dec 26 12:09:41 chaos kernel: scsi bus termination (low byte) disabled Dec 26 12:09:41 chaos kernel: aic7xxx: Resetting the SCSI bus...done. Dec 26 12:09:41 chaos kernel: scsi0 : Adaptec AHA274x/284x/294x (EISA/VLB/PCI-Fast SCSI) 4.0/3.2/4.0 Dec 26 12:09:41 chaos kernel: scsi : 1 host. Dec 26 12:09:41 chaos kernel: scsi0: Target 0, channel A, now synchronous at 10.0MHz, offset 15. Dec 26 12:09:41 chaos kernel: Vendor: Quantum Model: XP32150W Rev: L912 Dec 26 12:09:41 chaos kernel: Type: Direct-Access ANSI SCSI revision: 02 Dec 26 12:09:41 chaos kernel: Detected scsi disk sda at scsi0, channel 0, id 0, lun 0 Dec 26 12:09:41 chaos kernel: scsi0: Target 1, channel A, now synchronous at 10.0MHz, offset 15. Dec 26 12:09:41 chaos kernel: Vendor: Quantum Model: XP32150W Rev: L912 Dec 26 12:09:41 chaos kernel: Type: Direct-Access ANSI SCSI revision: 02 Dec 26 12:09:41 chaos kernel: Detected scsi disk sdb at scsi0, channel 0, id 1, lun 0 Dec 26 12:09:41 chaos kernel: scsi0: Target 4, channel A, now synchronous at 4.0MHz, offset 15. Dec 26 12:09:41 chaos kernel: Vendor: TOSHIBA Model: CD-ROM XM-3601TA Rev: 1885 Dec 26 12:09:41 chaos kernel: Type: CD-ROM ANSI SCSI revision: 02 Dec 26 12:09:41 chaos kernel: Detected scsi CD-ROM sr0 at scsi0, channel 0, id 4, lun 0 Dec 26 12:09:41 chaos kernel: scsi0: Target 6, channel A, now synchronous at 10.0MHz, offset 15. Dec 26 12:09:41 chaos kernel: Vendor: QUANTUM Model: FIREBALL_TM1280S Rev: 300N Dec 26 12:09:41 chaos kernel: Type: Direct-Access ANSI SCSI revision: 02 Dec 26 12:09:41 chaos kernel: Detected scsi disk sdc at scsi0, channel 0, id 6, lun 0 Dec 26 12:09:41 chaos kernel: scsi : detected 1 SCSI cdrom 3 SCSI disks total. Dec 26 12:09:41 chaos kernel: SCSI device sda: hdwr sector= 512 bytes. Sectors= 4406960 [2151 MB] [2.2 GB] Dec 26 12:09:41 chaos kernel: SCSI device sdb: hdwr sector= 512 bytes. Sectors= 4406960 [2151 MB] [2.2 GB] Dec 26 12:09:41 chaos kernel: SCSI device sdc: hdwr sector= 512 bytes. Sectors= 2503872 [1222 MB] [1.2 GB] Dec 26 12:09:41 chaos kernel: ne.c:v1.10 9/23/94 Donald Becker (becker@cesdis.gsfc.nasa.gov) Dec 26 12:09:41 chaos kernel: NE*000 ethercard probe at 0x300: 08 00 00 12 35 99 Dec 26 12:09:41 chaos kernel: eth0: NE2000 found at 0x300, using IRQ 5. Dec 26 12:09:41 chaos kernel: Partition check: Dec 26 12:09:41 chaos kernel: sda: sda1 sda2 < sda5 sda6 sda7 sda8 > Dec 26 12:09:41 chaos kernel: sdb: sdb1 sdb2 sdb3 Dec 26 12:09:41 chaos kernel: sdc: sdc1 sdc2 sdc3 Dec 26 12:09:41 chaos kernel: VFS: Mounted root (ext2 filesystem) readonly. Dec 26 12:09:41 chaos kernel: Adding Swap: 130748k swap-space (priority -1) Dec 26 12:09:53 chaos login: ROOT LOGIN ON tty1
Cheers, Dick Johnson -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Richard B. Johnson Project Engineer Analogic Corporation Voice : (508) 977-3000 ext. 3754 Fax : (508) 532-6097 Modem : (508) 977-6870 Ftp : ftp@boneserver.analogic.com Email : rjohnson@analogic.com, johnson@analogic.com Penguin : Linux version 2.1.16 on an i586 machine (66.15 BogoMips). Warning : It's hard to remain at the trailing edge of technology. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
|  |