Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 16 May 2002 19:53:32 -0600
From:      Ian <freebsd@damnhippie.dyndns.org>
To:        freebsd-stable <freebsd-stable@freebsd.org>
Subject:   Re: new ATA bug
Message-ID:  <B909BEBB.D10C%freebsd@damnhippie.dyndns.org>
In-Reply-To: <20020516122509.W52717-100000@resnet.uoregon.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
On 05/16/02 13:25, Doug White wrote:

> On Thu, 16 May 2002, Tod McQuillin wrote:
> 
>> On Thu, 16 May 2002, Vladislav V. Zhuk wrote:
>> 
>>> When will be fixed bug with definition interfeces in new ata?
>>> 
>>> I have disabled secondary IDE interface in BIOS and kernel config:
>>> 
>>> # ATA and ATAPI devices
>>> device          ata0    at isa? port IO_WD1 irq 14
>>> #device         ata1    at isa? port IO_WD2 irq 15
>>> 
>>> but ata driver still locked IRQ 15:
> 
> This is common... "disabling" the controllers just makes them invisible to
> the BIOS for booting, but FreeBSD will re-find them.  The IRQ is still
> allocated to that device on the motherboard and using it will cause
> problems.

I don't think so, this appears to be a genuine case of "something changed in
FreeBSD..."

My motherboard and BIOS (ASUS P2B, Award) have always behaved such that
disabling the primary or secondary IDE controllers frees up the
corresponding IRQs and they get assigned to other PCI devices.

Today I upgrade one such machine from 4.5 release to -STABLE.  The primary
IDE controller is enabled and has a cdrom on the master, no slave drive; the
secondary IDE controller is disabled in the BIOS.  Here's some output from
last time I rebooted:


May  1 06:39:34 paranoia /kernel: FreeBSD 4.5-RELEASE #0: Sat Feb  2
16:27:47 MST 2002
May  1 06:39:34 paranoia /kernel:
root@revolution.hippie.lan:/build/releng_4_5/src/sys/compile/PARANOIA
[...]
May  1 06:39:35 paranoia /kernel: atapci0: <Intel PIIX4 ATA33 controller>
port 0xd800-0xd80f at device 4.1 on pci0
May  1 06:39:35 paranoia /kernel: ata0: at 0x1f0 irq 14 on atapci0
May  1 06:39:35 paranoia /kernel: pci0: <Intel 82371AB/EB (PIIX4) USB
controller> at 4.2
[...]
May  1 06:39:35 paranoia /kernel: de0: <Digital 21140A Fast Ethernet> port
0xb800-0xb87f mem 0xe0800000-0xe080007f irq 15 at device 10.0 on pci0


Here's the output from this morning's reboot after the upgrade:


May 16 13:28:40 paranoia /kernel: FreeBSD 4.6-RC #2: Thu May 16 11:53:27 MDT
2002
May 16 13:28:40 paranoia /kernel:
root@revolution.hippie.lan:/data/obj/build/releng_4/src/sys/PARANOIA
[...]
May 16 13:28:40 paranoia /kernel: atapci0: <Intel PIIX4 ATA33 controller>
port 0xd800-0xd80f at device 4.1 on pci0
May 16 13:28:40 paranoia /kernel: ata0: at 0x1f0 irq 14 on atapci0
May 16 13:28:40 paranoia /kernel: ata1: at 0x170 irq 15 on atapci0
May 16 13:28:40 paranoia /kernel: pci0: <Intel 82371AB/EB (PIIX4) USB
controller> at 4.2
[...]
May 16 13:28:40 paranoia /kernel: de0: <Digital 21140A Fast Ethernet> port
0xb800-0xb87f mem 0xe0800000-0xe080007f irq 15 at device 10.0 on pci0


The only thing that changed is that I cvsup'd to the latest -STABLE and
rebuilt the world.  No BIOS config changes, no kernel config changes.

I find it interesting that IRQ 15 is assigned to the de0 NIC in both the
before and after cases, at least according to FreeBSD.  I haven't been
having any problems with networking, but maybe that's because I don't
actually have any devices on the secondary IDE to create conflicts.  Or,
perhaps the change is just some misleading output from the boot messages and
the ata driver isn't really trying to handle irq 15.

Still, whether a matter of just reporting or whether it might really cause
problems for devices more sensitive to interupt handling than a NIC, I can't
say.  But it's clearly a difference in behavior of some sort.

-- Ian



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?B909BEBB.D10C%freebsd>