[ATA] and re(4) stability issues
Pyun YongHyeon
pyunyh at gmail.com
Tue Dec 9 22:36:49 PST 2008
On Tue, Dec 09, 2008 at 07:52:37PM +0100, Victor Balada Diaz wrote:
> Hello,
>
> I got various machines[1] at hetzner.de and I've been having problems
> with interrupts on FreeBSD 7.0 and now FreeBSD 7.1 -BETA2 in amd64. I've
> been trying to narrow the problem so someone more knowledgeable than me
> is able to fix it. This mail is an other attempt to ask a question
> with regards ATA code to see if this time i got something.
>
> For the ones that don't actually know what happened:
>
> With FreeBSD 7.0 -RELEASE for amd64 and default kernel
> the system shared re0 interrupt with OHCI and this caused
> re(4) to corrupt packets and create interrupt storms. Tried
re(4) in 7.0-RELEASE had bus_dma(9) bug which could be easily
triggered on systems with > 4GB memory. But I dont' know whether
this is related with interrupt storms.
> updating to 7.1 -BETA2 and still had some problems with it.
>
> I've opened the PR kern/128287[2] and Remko quickly answered
> with a workaround: that workaround was removing USB support from
> my kernel. I did it and re(4) wasn't sharing interrupts anylonger,
> and the interrupt storms were gone. Now sometime later the interface
> goes up and down from time to time, but less often. Also sometimes
> the machine losts the network interface but continues to work.
>
It seems that your controller supports MSI so you can set a tunable
hw.re.msi_disable to 0 to enable MSI. With MSI you can remove
interrupt sharing(e.g. add hw.re.msi_disable="0" to
/boot/loader.conf file.) However there were several issues on re(4)
w.r.t MSI so it was off by default.
> I know it continues to work because some days later i can see that
> it tried to deliver the status reports but was unable to resolve the
> aliases hostnames. I can't ping the machine and i know the network
> is OK. If i reboot the machine everything is working again.
>
Recently I've made small changes to re(4) which may help to detect
link state change event. Would you try re(4) in HEAD?
--
Regards,
Pyun YongHyeon
More information about the freebsd-amd64
mailing list