Please login or register.

Login with username, password and session length
Advanced search  

News:

Pages: [1]   Go Down

Author Topic: Documented Silicon Image 3124 data corruption problem  (Read 3972 times)

(S)ATAman

  • 128 MB
  • ****
  • Posts: 161
  • New Member
Documented Silicon Image 3124 data corruption problem
« on: January 05, 2020, 11:18:30 AM »

Straight from horse's mouth, 15+ year old errata.

DMA Context Switch Failure in Port Multiplier Mode

A DMA context switch failure can occur when operating with a port multiplier (PM), causing data destined to or from one PM port to be transferred to or from another PM port. The conditions required to produce this failure are:

1. The SiI3124 device port must be connected to a port multiplier.
2. Commands must be outstanding to 3 or more PM ports simultaneously.
3. One of the devices connected to a PM port returns error status.

When these conditions are met, it is possible that the SiI3124 will not properly switch DMA context upon a data transfer from one of the non-erring devices after the driver performs an error recovery resume operation. This can cause data corruption, since data to/from one device will be transferred to/from another device.

Workaround:

None. To prevent possible data corruption, the host driver should issue a device reset (port control set register, bit 1) if a command error is received while commands are outstanding to three or more devices simultaneously on a single SiI3124 SATA port.


(SiI3124-2 Rev 0.2 Errata, SiI-AN-0030-E)
Logged

(S)ATAman

  • 128 MB
  • ****
  • Posts: 161
  • New Member
Re: Documented Silicon Image 3124 data corruption problem
« Reply #1 on: January 05, 2020, 11:27:40 AM »

Straight from horse's mouth, 15+ year old errata.

DMA Context Switch Failure in Port Multiplier Mode

A DMA context switch failure can occur when operating with a port multiplier (PM), causing data destined to or from one PM port to be transferred to or from another PM port. The conditions required to produce this failure are:

1. The SiI3124 device port must be connected to a port multiplier.
2. Commands must be outstanding to 3 or more PM ports simultaneously.
3. One of the devices connected to a PM port returns error status.

When these conditions are met, it is possible that the SiI3124 will not properly switch DMA context upon a data transfer from one of the non-erring devices after the driver performs an error recovery resume operation. This can cause data corruption, since data to/from one device will be transferred to/from another device.

Workaround:

None. To prevent possible data corruption, the host driver should issue a device reset (port control set register, bit 1) if a command error is received while commands are outstanding to three or more devices simultaneously on a single SiI3124 SATA port.


(SiI3124-2 Rev 0.2 Errata, SiI-AN-0030-E)

My (temporary) workaround: never have more, than two PMP ports busy the same time on the same SATA channel.
That turned out to be a permanent one because Marvell 88SX7042 / 6042 is a much faster and more sophisticated chip without that shortcoming.

To bad, at the time the driver for 7042 was ready, the G5 was history.
So no FCode driver for 6042 / 7042.

Today the 7042 is very easy to come by - but the PCI-X sibling (6042) is very rare.

7042 is very much compatible with the last G5 with PCIe slots.
Logged
Pages: [1]   Go Up

Recent Topics

[Cubase/Nuendo by Steinberg] Nuendo 1.6.x [k'd] by IIO Yesterday at 06:25:13 PM
[Logic Audio by Emagic] XSKey Emulator for OS X by Enabler Yesterday at 06:09:46 PM
[Logic Audio by Emagic] highest logic authorized by white xskey? by Enabler October 13, 2025, 05:09:05 PM
[Audio & MIDI Hardware] Connecting two emagic AMT8 usb under mac os 9.2 by Enabler October 12, 2025, 01:48:10 PM
[Off Topic] AI bot becomes a millionaire... by aBc October 12, 2025, 12:55:14 PM
[New Member Welcome] Hi by midiman October 12, 2025, 01:18:52 AM
[Software] Unreal Tournument GOTY Not Connecting to any servers by BoloTied October 11, 2025, 04:23:29 PM
[New Member Welcome] Hi! by Knezzen October 11, 2025, 01:58:36 PM