Re: New kernel no longer boots on one of my machines... ata, other problems
Matthew Dillon wrote: Well guys, I tried upgrading one of my older machines today to the latest 4.0. It was running an older 4.0 kernel (Nov 29 1999). [ Detailed description deleted ] HELP! Whats happening!!! :-( :-( :-( At the moment I am stymied. I switched to a GENERIC kernel and got the same results, so it isn't anything weird that I have done in my own kernel config. I was hoping that someone would have an idea. -Matt Hi folks, As already reported yesterday, I have similar problems, and I have been doing some experiments today with my ancient Pentium 66. With 4.0 CURRENT as of yesterday, it seem to hang while booting, when configured to use the new ATA driver. When using the old WD driver, there is no such problem. The system has 64 MB RAM, two Western Digital harddisks of 1.6 GB and 3.1 GB respectively, 8x Toshiba CDROM, Matrox Millenium II graphics card, and a 3Com 905B NIC. As Matt did, I switched to a GENERIC kernel, and I booted with the options -s and -v. The system seems to hang after the message: Mounting root from ufs:wd0s1a However, if I hit RETURN, followed by CTL-ALT-ESC, I actually end up in the single user mode shell. I even can run commands, I only must type CTL-ALT-ESC to see the output. And indeed, the clock is not running. By mounting /var, I captured the output of dmesg in a file. And it shows at least one strange thing: ata-pci0: Unknown PCI ATA controller (generic mode) at device 1.0 on pci0 ata-pci0: Busmastering DMA not supported ata0: iobase=0x01f0 altiobase=0x03f4 bmaddr=0x ata0: mask=03 status0=50 status1=50 ata0: mask=03 status0=50 status1=50 ata0: devices = 0x3 ata0 at 0x01f0 irq 0 on ata-pci0 ^^^ I.e. ata0 takes the irq that is normally reserved for the timer. And somewhat later in the boot process we see: Device configuration finished. device combination doesn't support shared irq0 intr_connect(irq0) failed, result=-1 So indeed the timer is not able to interrupt, which explains the strange phenomena. The secondary EIDE interface, which is on the ISA bus in this system, is recognized correctly: ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0x ata1: mask=01 status0=00 status1=ff ata1: mask=01 status0=00 status1= ata1: devices = 0x4 ata1 at port 0x170 irq 15 on isa0 As a quick fix, to get rid of the problem for now, I forced the irq of ata0 to 14 in the source. I added the line irq1 = 14; after line 293 in /sys/dev/ata/ata-all.c (1.39) After compiling the kernel, the system reboots and runs without any problems, using the ATA drivers. Apparently, something is going wrong when reading the PCI configuration on these old systems. It certainly justifies some investigation. Kind regards, Hans To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New kernel no longer boots on one of my machines... ata, other problems
Hi, Before people start wondering about my name being mangled in the From: field of my previous message: Sorry, it happens regularly when cutting and pasting into the mailer of the Netscape Communicator 4.7. Maybe I have to switch to another mailtool... Cheers, Hans To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New kernel no longer boots on one of my machines... ata, other problems
Yes! That is exactly the problem I have been having since the 1999/10/09 12:57:15 PDT ATA commit. Here is the link to the email I sent earlier: http://www.FreeBSD.org/cgi/getmsg.cgi?fetch=1326170+1331912+/usr/local/www/db/text/1999/freebsd-current/19991212.freebsd-current Basically, on my Pentium 66 system, I'm seeing the same problems followed by the message microuptime() went backwards (1.4342530 - 1,047990) Thanks for investigating this! Greg At 08:22 PM 1/9/00 +0100, Hans Ottevangerne_anchors wrote: As already reported yesterday, I have similar problems, and I have been doing some experiments today with my ancient Pentium 66. With 4.0 CURRENT as of yesterday, it seem to hang while booting, when configured to use the new ATA driver. When using the old WD driver, there is no such problem. The system has 64 MB RAM, two Western Digital harddisks of 1.6 GB and 3.1 GB respectively, 8x Toshiba CDROM, Matrox Millenium II graphics card, and a 3Com 905B NIC. As Matt did, I switched to a GENERIC kernel, and I booted with the options -s and -v. The system seems to hang after the message: Mounting root from ufs:wd0s1a However, if I hit RETURN, followed by CTL-ALT-ESC, I actually end up in the single user mode shell. I even can run commands, I only must type CTL-ALT-ESC to see the output. And indeed, the clock is not running. By mounting /var, I captured the output of dmesg in a file. And it shows at least one strange thing: ata-pci0: Unknown PCI ATA controller (generic mode) at device 1.0 on pci0 ata-pci0: Busmastering DMA not supported ata0: iobase=0x01f0 altiobase=0x03f4 bmaddr=0x ata0: mask=03 status0=50 status1=50 ata0: mask=03 status0=50 status1=50 ata0: devices = 0x3 ata0 at 0x01f0 irq 0 on ata-pci0 ^^^ I.e. ata0 takes the irq that is normally reserved for the timer. And somewhat later in the boot process we see: Device configuration finished. device combination doesn't support shared irq0 intr_connect(irq0) failed, result=-1 So indeed the timer is not able to interrupt, which explains the strange phenomena. The secondary EIDE interface, which is on the ISA bus in this system, is recognized correctly: ata1: iobase=0x0170 altiobase=0x0376 bmaddr=0x ata1: mask=01 status0=00 status1=ff ata1: mask=01 status0=00 status1= ata1: devices = 0x4 ata1 at port 0x170 irq 15 on isa0 As a quick fix, to get rid of the problem for now, I forced the irq of ata0 to 14 in the source. I added the line irq1 = 14; after line 293 in /sys/dev/ata/ata-all.c (1.39) After compiling the kernel, the system reboots and runs without any problems, using the ATA drivers. Apparently, something is going wrong when reading the PCI configuration on these old systems. It certainly justifies some investigation. Kind regards, Hans To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New kernel no longer boots on one of my machines... ata, other problems
Matthew Dillon writes: | Well guys, I tried upgrading one of my older machines today to the | latest 4.0. It was running an older 4.0 kernel (Nov 29 1999). I ran into a similar problem when upgrading my server at home. It is an old 486 with an Intel Saturn chipset. I found the IDE drive via ad0 and failed the mount with error 6 or whatever. I then put the same drive in a machine with a P5 Intel TX chipset. In this setup ad0 was found and it mounted the rootfs with no trouble. Since this is a machine that needs to be up I switched to the wd driver which worked like charm except for re-enabling it. So in my configuration it is not a MAKDEV/fstab stale issue (I rebuild all of that) and it works with a PCI driver but not with the Saturn ISA driver. My successful boot and probe is: wdc0 at port 0x1f0-0x1f7 irq 14 flags 0xa0ffa0ff on isa0 wdc0: unit 0 (wd0): IBM-DTTA-351350, multi-block-16 wd0: 12897MB (26414640 sectors), 26205 cyls, 16 heads, 63 S/T, 512 B/S Now I recall in discussions about pcmcia stuff and the various patches flying around that there was a 32/16 bit access mode issue. Also I think while the pcmcia was in 32 bit mode hard disk access stopped working and maybe flash (since my external IDE hard drive work then it didn't then it did again). I think this correlated to when it was switched to 16 bit then it started working again. Anyways more work and lots of testing needs to be done. Even though I like the new ata stuff and use it on all machines (except for one) this is scary since a bunch of 4.0 users could get screwed with older good hardware. Tonight I will try to define ATA_16BIT_ONLY in my kernel and try to boot with ata. This may have to be set in GENERIC for installs to work ... or the ata driver learn how to figure this out automatically on the fly. BTW this almost hosed me. Doug A. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New kernel no longer boots on one of my machines... ata, other problems
Matthew Dillon wrote: Well guys, I tried upgrading one of my older machines today to the latest 4.0. It was running an older 4.0 kernel (Nov 29 1999). .. HELP! Whats happening!!! :-( :-( :-( At the moment I am stymied. I switched to a GENERIC kernel and got the same results, so it isn't anything weird that I have done in my own kernel config. I was hoping that someone would have an idea. -Matt I also have one of those old Pentiums, with an Intel motherboard and a Mercury chipset. And I have similar problems with CURRENT of a few days ago. When I configure my kernel to use the new ata driver, it hangs when booting. I plan to reproduce this problem this weekend, with a more recent CURRENT. I think the problem is caused by the RZ1000 EIDE controller on this type of motherboard. I suspect that the new ata driver deals with interrupts in ways somewhat different from the old wd driver. According to the Intel documentation, interrupts during data transfers may cause data corruption. This RZ1000 issue has been discussed on this list a few weeks ago, without a real solution. Kind regards, Hans To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
New kernel no longer boots on one of my machines... ata, other problems
Well guys, I tried upgrading one of my older machines today to the latest 4.0. It was running an older 4.0 kernel (Nov 29 1999). I've included the dmesg output from the (successfully booting) older kernel at the end. The newer kernel locks up in several ways: * First, it locks up with process 0 stuck in 'atawait' while trying to scan the CDRom on the second IDE bus. This is after it has successfully scanned the hard drive on the first IDE bus. * Second, if I remove the 'ata1' config entry it gets past the initial ata probe but then locks up in 'conifhk' which is in the run_interrupt_driven_config_hooks() procedure in kern/subr_autoconf.c It locks up here after printing 'waiting 15 seconds for SCSI devices to settle'. Several minutes later it's still waiting :-(. * If I remove the second ata device AND I remove the SCSI devices and controllers so it detects no SCSI devices, it gets all the way to where it says "Mounting root on wd0s4a", then gets an error 6, then says "Mounting root on wd0a", then just stops. Breaking into DDB and doing a ps shows 'init' and 'sh' both blocked in 'wait'. The hard drive appears to work -- panic does sync the disks. * The second time I did this when I CTL-ALT-ESC'd into DDB I suddenly got a whole bunch of console startup output. I 'cont'd from DDB, and nothing... CTL-ALT-ESC'd into DDB and got some more console output from the normal startup sequence before it gave me the DDB prompt. 'cont'd. nothing. I got it to the point where ping works but nothing else does. HELP! Whats happening!!! :-( :-( :-( At the moment I am stymied. I switched to a GENERIC kernel and got the same results, so it isn't anything weird that I have done in my own kernel config. I was hoping that someone would have an idea. -Matt Copyright (c) 1992-1999 The FreeBSD Project. Copyright (c) 1982, 1986, 1989, 1991, 1993 The Regents of the University of California. All rights reserved. FreeBSD 4.0-CURRENT #1: Mon Nov 29 22:10:35 PST 1999 [EMAIL PROTECTED]:/FreeBSD/FreeBSD-4.x/src/sys/compile/ARCHIVE Timecounter "i8254" frequency 1193182 Hz Timecounter "TSC" frequency 66751430 Hz CPU: Pentium/P54C (66.75-MHz 586-class CPU) Origin = "GenuineIntel" Id = 0x524 Stepping = 4 Features=0x1bfFPU,VME,DE,PSE,TSC,MSR,MCE,CX8 real memory = 67108864 (65536K bytes) avail memory = 61698048 (60252K bytes) Preloaded elf kernel "kernel.bak" at 0xc0335000. npx0: math processor on motherboard npx0: INT 16 interface pcib0: Host to PCI bridge on motherboard pci0: PCI bus on pcib0 ign0 at device 1.0 on pci0 isab0: Intel 82378ZB PCI to ISA bridge at device 2.0 on pci0 isa0: ISA bus on isab0 vga-pci0: S3 Trio 64 graphics accelerator irq 10 at device 6.0 on pci0 xl0: 3Com 3c905B-TX Fast Etherlink XL irq 9 at device 12.0 on pci0 xl0: Ethernet address: 00:10:5a:e0:82:29 miibus0: MII bus on xl0 xlphy0: 3Com internal media interface on miibus0 xlphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto ncr0: ncr 53c810 fast10 scsi irq 11 at device 14.0 on pci0 devclass_alloc_unit: npx0 already exists, using next available unit number fdc0: NEC 72065B or clone at port 0x3f0-0x3f7 irq 6 drq 2 on isa0 fdc0: FIFO enabled, 8 bytes threshold fd0: 1440-KB 3.5" drive on fdc0 drive 0 wdc0 at port 0x1f0-0x1f7 irq 14 flags 0xa0ffa0ff on isa0 wdc0: unit 0 (wd0): Maxtor 91360D8, 32-bit, multi-block-16 wd0: 12970MB (26563824 sectors), 26353 cyls, 16 heads, 63 S/T, 512 B/S wdc1 at port 0x170-0x177 irq 15 flags 0xa0ffa0ff on isa0 wdc1: unit 0 (atapi): Pioneer CD-ROM ATAPI Model DR-A12X 0100/E1.00A, removable, ovlap, dma, iordis wcd0: drive speed 2066KB/sec, 128KB cache wcd0: supported read types: CD-R, CD-DA, packet track wcd0: Audio: play, 256 volume levels wcd0: Mechanism: ejectable tray wcd0: Medium: no/blank disc inside, unlocked atkbdc0: keyboard controller (i8042) at port 0x60-0x6f on isa0 vga0: Generic ISA VGA at port 0x3b0-0x3df iomem 0xa-0xb on isa0 sc0: System console on isa0 sc0: VGA 16 virtual consoles, flags=0x200 sio0 at port 0x3f8-0x3ff irq 4 on isa0 sio0: type 16550A ppc0 at port 0x378-0x37f irq 7 flags 0x40 on isa0 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode lpt0: generic printer on ppbus 0 lpt0: Interrupt-driven port IP packet filtering initialized, divert enabled, rule-based forwarding disabled, default to accept, unlimited logging Waiting 5 seconds for SCSI devices to settle Mounting root from ufs:wd0s4a Root mount failed: 6 Mounting root from ufs:wd0a link_elf: symbol splash_register undefined cd0 at ncr0 bus 0 target 3 lun 0 cd0: YAMAHA CRW6416S 1.0b Removable CD-ROM SCSI-2 device cd0: 10.000MB/s transfers (10.000MHz, offset 8) cd0: Attempt to query device
Re: New kernel no longer boots on one of my machines... ata, other problems
: * First, it locks up with process 0 stuck in 'atawait' while I meant 'atacmd' here. -Matt To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message
Re: New kernel no longer boots on one of my machines... ata, other problems
: :: * First, it locks up with process 0 stuck in 'atawait' while : : : I meant 'atacmd' here. : : -Matt From what I can tell so far, something during the kernel boot is disabling the timer interrupt. The ATA probe does a tsleep() which never times out. Output is queued to the console during the boot sequence which is never printed (until I CTL-ALT-ESC)... has someone messed with spl*()'s anywhere recently? -Matt Matthew Dillon [EMAIL PROTECTED] To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message