Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 185272
Collapse All | Expand All

(-)drivers/message/fusion/mptbase.c.orig (+10 lines)
Lines 2567-2572 Link Here
2567
	pfacts->IOCStatus = le16_to_cpu(pfacts->IOCStatus);
2567
	pfacts->IOCStatus = le16_to_cpu(pfacts->IOCStatus);
2568
	pfacts->IOCLogInfo = le32_to_cpu(pfacts->IOCLogInfo);
2568
	pfacts->IOCLogInfo = le32_to_cpu(pfacts->IOCLogInfo);
2569
	pfacts->MaxDevices = le16_to_cpu(pfacts->MaxDevices);
2569
	pfacts->MaxDevices = le16_to_cpu(pfacts->MaxDevices);
2570
	/*
2571
	* VMware emulation is broken, its PortFact's MaxDevices reports value
2572
	* programmed by IOC Init, so if you program IOC Init to 256 (which is 0,
2573
	* as that field is only 8 bit), it reports back 0 in port facts, instead
2574
	* of 256... And unfortunately using 256 triggers another bug in the
2575
	* code (parallel SCSI can have only 16 devices).
2576
	*/
2577
	if (pfacts->MaxDevices == 0) {
2578
		pfacts->MaxDevices = 16;
2579
	}
2570
	pfacts->PortSCSIID = le16_to_cpu(pfacts->PortSCSIID);
2580
	pfacts->PortSCSIID = le16_to_cpu(pfacts->PortSCSIID);
2571
	pfacts->ProtocolFlags = le16_to_cpu(pfacts->ProtocolFlags);
2581
	pfacts->ProtocolFlags = le16_to_cpu(pfacts->ProtocolFlags);
2572
	pfacts->MaxPostedCmdBuffers = le16_to_cpu(pfacts->MaxPostedCmdBuffers);
2582
	pfacts->MaxPostedCmdBuffers = le16_to_cpu(pfacts->MaxPostedCmdBuffers);

Return to bug 185272