Subject: Bug in ForeRunner LE (cache line settings) (was ATM (LANE) - related Kernel-Crashes)

while i was looking at the bug report on the sourceforge site, i decided
to take a quick look at your nicstar problem. can you try the following
patch (apply with patch -p1).


===== drivers/atm/nicstar.c 1.14 vs edited =====
--- 1.14/drivers/atm/nicstar.c Sun Feb 29 13:53:50 2004
+++ edited/drivers/atm/nicstar.c Tue Mar 16 12:43:19 2004
@@ -467,7 +467,7 @@
{
int j;
struct ns_dev *card = NULL;
- unsigned char pci_latency;
+ unsigned char pci_latency, cache_size;
unsigned error;
u32 data;
u32 u32d[4];
@@ -512,6 +512,21 @@
PRINTK("nicstar%d: membase at 0x%x.\n", i, card->membase);

pci_set_master(pcidev);
+
+ if (pci_read_config_byte(pcidev, PCI_CACHE_LINE_SIZE, &cache_size)) {
+ printk("nicstar%d: can't read cache line size?\n", i);
+ error = 6;
+ ns_init_card_error(card, error);
+ return error;
+ }
+
+ if ((cache_size << 2) != L1_CACHE_BYTES) {
+ printk("nicstar%d: PCI cache line size set incorrectly (%d), ", i, cache_size);
+ cache_size = L1_CACHE_BYTES >> 2;
+ printk("setting cache line size to %d\n", cache_size);
+ if (pci_write_config_byte(pcidev, PCI_CACHE_LINE_SIZE, cache_size))
+ printk("nicstar%d: can't set cache line size to %d\n", i, cache_size);
+ }

if (pci_read_config_byte(pcidev, PCI_LATENCY_TIMER, &pci_latency) != 0)
{


2004-03-16 22:28:44

by Peter Daum

[permalink] [raw]
Subject: Re: Bug in ForeRunner LE (cache line settings) (was ATM (LANE) - related Kernel-Crashes)

Hi,

On Tue, 16 Mar 2004, chas williams (contractor) wrote:

> while i was looking at the bug report on the sourceforge site, i decided
> to take a quick look at your nicstar problem. can you try the following
> patch (apply with patch -p1).

I applied your patch. The machine I checked (HP NetServer LC3, Pentium II)
now prints:
nicstar0: PCI cache line size set incorrectly (0),
setting cache line size to 8
when initializing the card.

Unfortunately, the patch does not fix the problem: My usual test
case, transferring data from Mcafee's ftp server, still doesn't
work.

Regards,
Peter Daum

Subject: Re: Bug in ForeRunner LE (cache line settings) (was ATM (LANE) - related Kernel-Crashes)

In message <[email protected]>,Peter Da
um writes:
>Unfortunately, the patch does not fix the problem: My usual test
>case, transferring data from Mcafee's ftp server, still doesn't
>work.

and i am not surprised. just read the manual for the card and it
doesnt support mwi (memory write invalidate) so the cache line
setting of the nicstar is meaningless. i will need to think about
this some more.