From 4ad1e20a4d909743f099921fdf38afe58b88943f Mon Sep 17 00:00:00 2001 From: Andi Kleen Date: Sat, 20 Mar 2004 23:17:28 -0500 Subject: [PATCH] [PATCH] Hack mptfusion to work on >4GB machines fusion needs several separately allocated coherent regions and requires that they all be in the same 4GB segment. Obviously this may fail. The hack is to force the coherent_dma_mask to 0xffffffff thus ensuring that all the allocations occur within the first 4GB. This hack breaks Altix entirely. --- drivers/message/fusion/mptbase.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/drivers/message/fusion/mptbase.c b/drivers/message/fusion/mptbase.c index f6513c2a48997..4901a58dd613e 100644 --- a/drivers/message/fusion/mptbase.c +++ b/drivers/message/fusion/mptbase.c @@ -1280,12 +1280,17 @@ mptbase_probe(struct pci_dev *pdev, const struct pci_device_id *id) return r; } +#if 0 + /* broken because some code assumes that multiple calls + to pci_alloc_consistent return data in the same 4GB segment. + This cannot work on machines with enough memory. */ if (!pci_set_consistent_dma_mask(pdev, mask)) dprintk((KERN_INFO MYNAM ": Using 64 bit consistent mask\n")); else dprintk((KERN_INFO MYNAM ": Not using 64 bit consistent mask\n")); +#endif ioc = kmalloc(sizeof(MPT_ADAPTER), GFP_ATOMIC); if (ioc == NULL) { -- 2.53.0