Re: Linux 2.2.18pre25

Willy Tarreau
2000-12-08T10:18:37Z

> I asked people to explain why it was needed. I am still waiting. It is a
> patch that does nothing. I will not put random deep magic into the
> kernel.

Alan, I replied to you a few weeks ago (pre20 times) when you asked me why
I was sending you this patch. (perhaps you didn't receive my email). What I
observed was that my netraid card had a 0xXXXX8 base address and the patch
aligned that address to 16 bytes :

|Bus 0, device 2, function 1:
| Unknown class: Intel OEM MegaRAID Controller (rev 5).
| Medium devsel. Fast back-to-back capable. BIST capable. IRQ 10. Master
Capable. Latency=64.
| Prefetchable 32 bit memory at 0xf0000000 [0xf0000008].

as you see, the board is found at 0xf0000008, but used aligned to 0xf0000000.

my server currently works with that patch, but I'm sure it won't boot anymore
if I apply this 2.2.18pre25 alone.

just in case, here it is again.

Cheers,
Willy

--- 18pre/drivers/scsi/megaraid.c Wed Nov 8 16:02:45 2000
+++ 18pre+megaraid/drivers/scsi/megaraid.c Fri Nov 10 12:03:05 2000
@@ -1920,10 +1920,14 @@

pciIdx++;

- if (flag & BOARD_QUARTZ)
+ if (flag & BOARD_QUARTZ) {
+ megaBase &= PCI_BASE_ADDRESS_IO_MASK;
megaBase = (long) ioremap (megaBase, 128);
- else
+ }
+ else {
+ megaBase &= PCI_BASE_ADDRESS_MEM_MASK;
megaBase += 0x10;
+ }

/* Initialize SCSI Host structure */
host = scsi_register (pHostTmpl, sizeof (mega_host_config));