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=0x0000
> 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=0x0000
> ata1: mask=01 status0=00 status1=ff
> ata1: mask=01 status0=00 status1=ffffffff
> 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