Robert Hancock wrote:
Jeff Garzik wrote:
Robert Hancock wrote:
This fixes some problems with ATAPI devices on nForce4 controllers in
ADMA mode
on systems with memory located above 4GB. We need to delay setting
the 64-bit
DMA mask until the PRD table and padding buffer are allocated so that
they don't
get allocated above 4GB and break legacy mode (which is needed for ATAPI
devices).
Signed-off-by: Robert Hancock <hancockr@xxxxxxx>
This is a bit nasty :/
I would consider setting the consistent DMA mask to 32-bit, and
setting the overall mask to 64-bit.
Seems like that would solve the problem?
The issue with that is that it would also constrain the ADMA CPB/PRD
table allocation to 32-bit, which I'd rather avoid having to do. There
are dual-socket Opteron boxes like HP xw9300 that use this controller,
and limiting the allocation to 32-bit could force a non-optimal node
allocation for the table memory.
These type of devices really want a version of dma_alloc_coherent that
allows overriding the DMA mask for specific allocations to make this
cleaner. I'm sure this isn't the only device that has different DMA mask
requirements for different consistent memory allocations..
This patch does has the advantage of being confirmed to fix the
reporter's problem (https://bugzilla.redhat.com/show_bug.cgi?id=351451)
which there's something to be said for this late in the .24-rc series..
Also, does this need to be rebased on top of what I just pushed upstream?
It don't think so.. this change is independent from the "sata_nv: don't
use legacy DMA in ADMA mode (v3)" patch you just merged.
This bug fix is still outstanding. I haven't heard any more comments on
this one recently..
--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@xxxxxxxxxxxxx
Home Page: http://www.roberthancock.com/
-
To unsubscribe from this list: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html