summaryrefslogtreecommitdiff
path: root/share/tmac/mdoc/doc-ditroff
diff options
context:
space:
mode:
authorKenneth R Westerback <krw@cvs.openbsd.org>2003-07-01 17:15:07 +0000
committerKenneth R Westerback <krw@cvs.openbsd.org>2003-07-01 17:15:07 +0000
commit93d92df72e7e3af474865f8f2eb06de7ce91b354 (patch)
tree9b50a654f37c03f7bad7035ed46717a0b365c2b9 /share/tmac/mdoc/doc-ditroff
parented03395998fad2d4a56d64c53191b035072f191c (diff)
Don't dma map the xs->cmd. Copy it to a safe buffer that is already
mapped and sync'ed appropriately, and is guaranteed to be in one memory page. Eliminate now unused dmamap_cmd and rs_cmd fields. Fix another error message (adding active command to reset list) so that it includes the adapter name. Add missing letoh32() calls to debug code. The evils of directly mapping *xs->cmd were pointed out by Mickey during osiop development. In particular, *xs->cmd may start on one memory page and run into the next. Since the dma logic in most cards/drivers (including siop) only allocates one address/size pair to map *xs->cmd, parts of a command could be lost or corrupted. The large number of 6 byte dma mappings noted long ago by someone (Henric?). This change reduces the dma mapping activity per i/o by 1/3 to 1/2 and may give a performance boost of some kind. Successfully tested on i386, sparc64 (ultra30 - thanks Jolan, blade100), macppc and alpha. Unfortunately these changes don't fix the Blade1000 siop problems. **NOTE** If scsi_generic is ever upped to 16 bytes the offsets in siop.ss must be updated!
Diffstat (limited to 'share/tmac/mdoc/doc-ditroff')
0 files changed, 0 insertions, 0 deletions