WDD DMA info: partial transfers, windows, partial windows, stashing cookies
State
3-Accepted (Yes, that is a problem)
Category:Subcategory
doc:devicedriver
Keywords
DMA
Responsible Engineer
Alta Elstad
Reported Against
Duplicate Of
Introduced In
Commit to Fix
Fixed In
Release Fixed
Related Bugs
Submit Date
2-May-2007
Last Update Date
11-February-2009
Description
I received this comment on the WDD from David Gwynne in the School of Information Technology and Electrical Engineering at xxxxx , who developed a Solaris mfi driver for LSI Logic MegaRAID SAS controllers and Dell PERC 5 controllers:
I did have issues with handling of partial DMA transfers, which I don't
feel was explained that well in WDD. I got better examples from source
code for other drivers in the OpenSolaris tree. That deserves some more
text, especially dealing with dma windows, the fact that you cant
reiterate over the dma cookies (requiring you to stash them yourself),
and the fact that you have to deal with partial dma windows.
I would have appreciated a quick easy walkthrough of the locking
primitives in the kernel as well.