2004-03-01 18:29:51

by Nick Warne

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info

> Ok, thanks for debugging. Looks like this problem is not 8139too.
> And same problem should happen with the old driver (probably, it appear
> with "max_interrupt_work=1").
>
> Umm... I guess this problem is miss config of Edge/Level-Trigger or
> something. Sorry, I don't know detail.

Well, after running whatever patches you supplied for me to test, I
can confirm after running it for 30 hours, it works a treat - and
without having any true measuring devices on network performance, I
can tell you it is very much faster and responsive all round... on
downloads, web browsing, FTP - everything. (as you do say, I did
used to get pauses sometimes during large file movement/downloads
etc., but just thought it was normal network activity - I do not get
them any more!).

Insomuchso I have kept this debug 8139too.c build as a running kernel
now.

Thank you,

Nick

--
"When you're chewing on life's gristle,
Don't grumble, Give a whistle..."


2004-03-22 21:19:54

by Jeff Garzik

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info

What was the final resolution of the 8139too debugging?

2004-03-22 22:52:30

by OGAWA Hirofumi

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info

Jeff Garzik <[email protected]> writes:

> What was the final resolution of the 8139too debugging?

http://marc.theaimsgroup.com/?l=linux-kernel&m=107919285122190&w=2

The cause of his problem was BIOS configuration. It was edge-trigger.

Thanks.
--
OGAWA Hirofumi <[email protected]>

2004-03-31 19:43:29

by Christian Gut

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info


On Tue, 23 Mar 2004, OGAWA Hirofumi wrote:

> Jeff Garzik <[email protected]> writes:
> > What was the final resolution of the 8139too debugging?
>
> http://marc.theaimsgroup.com/?l=linux-kernel&m=107919285122190&w=2
> The cause of his problem was BIOS configuration. It was edge-trigger.

not sure if that was the only reason. 2.6.3 and everything up breaks the
rtl nic in my laptop and i cant configure anything like edge-trigger in
my bios.

The nic works without problems when i use 2.6.2 version of 8139too.c. Is
there any possibility to get these or similar patches into 2.6.5 to
support a config option to get the old behavior?

2004-04-01 03:58:08

by OGAWA Hirofumi

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info

Christian Gut <[email protected]> writes:

> On Tue, 23 Mar 2004, OGAWA Hirofumi wrote:
>
> > Jeff Garzik <[email protected]> writes:
> > > What was the final resolution of the 8139too debugging?
> >
> > http://marc.theaimsgroup.com/?l=linux-kernel&m=107919285122190&w=2
> > The cause of his problem was BIOS configuration. It was edge-trigger.
>
> not sure if that was the only reason. 2.6.3 and everything up breaks the
> rtl nic in my laptop and i cant configure anything like edge-trigger in
> my bios.

Could you please tell more detail, what happened?
And please send the /proc/interrupt, dmesg, lspci -vvvxxx.

> The nic works without problems when i use 2.6.2 version of 8139too.c. Is
> there any possibility to get these or similar patches into 2.6.5 to
> support a config option to get the old behavior?
--
OGAWA Hirofumi <[email protected]>

2004-04-04 17:02:58

by OGAWA Hirofumi

[permalink] [raw]
Subject: Re: 2.6.3 - 8139too timeout debug info

OGAWA Hirofumi <[email protected]> writes:

> Christian Gut <[email protected]> writes:
>
> > On Tue, 23 Mar 2004, OGAWA Hirofumi wrote:
> >
> > > Jeff Garzik <[email protected]> writes:
> > > > What was the final resolution of the 8139too debugging?
> > >
> > > http://marc.theaimsgroup.com/?l=linux-kernel&m=107919285122190&w=2
> > > The cause of his problem was BIOS configuration. It was edge-trigger.
> >
> > not sure if that was the only reason. 2.6.3 and everything up breaks the
> > rtl nic in my laptop and i cant configure anything like edge-trigger in
> > my bios.

This problem was also edge-triggered interrupt. In his case, ACPI
enable fixes it.

Looks like APCI does the following in acpi_pci_irq_enable(),

/*
* Make sure all (legacy) PCI IRQs are set as level-triggered.
*/
#ifdef CONFIG_X86
{
static u16 irq_mask;
if ((dev->irq < 16) && !((1 << dev->irq) & irq_mask)) {
ACPI_DEBUG_PRINT((ACPI_DB_INFO, "Setting IRQ %d as level-triggered\n", dev->irq));
irq_mask |= (1 << dev->irq);
eisa_set_level_irq(dev->irq);
}
}
#endif

This one is useful as workaround. But I think eisa_set_level_irq() is
not enough for doing this, because looks like the some chips needs
additional setting.

Probably we need the proper interface... Ummm..
--
OGAWA Hirofumi <[email protected]>