While doing more testing of this animal, I found that a random kernel oops would occur. It never seemed to happen when using the DIAG driver for swap space (my original intent). Only when using the driver for a standard file system.
It took a while to track down and I decided to rework the original patch while I looked for it. The problem was (what I believe to be) an incorrect comparison in ccwcache.c that would cause storage passed the ccw_cache[] array to be referenced if the size being searched for was equal to the maximum cache size. It also caused the wrong cache line to be selected if the needed size equaled the size of the line. Not really much of a concern, but in my testing it did occur about 2% of the time and meant that the wrong cache was searched (and stolen from) for an available entry. I've run many copies, Bonnies, Bonnie++s, memhogs, as well as other sundries, and it appears to be working fine. The SG246926 Redbook (what got me started on this mess) said the DIAG discipline was faster, but I didn't really believe it until I saw it compared to the FBA driver. Anyway, the new version is over at: http://www.homerow.net/projects/zlinux/64bit-diag.htm Have fun, Leland
