In article <xs4all.200711212312.lALNCVWt014163@xxxxxxxxxxxxxxxxxxxxxxxxxx> you write: >Path: news.xs4all.nl!newsspool.news.xs4all.nl!post.news.xs4all.nl!gateway >The enclosed patch introduces a new adapter quirk and tries to limp >along by enabling pass-through in situations where memory is 32 bit >addressable on 64 bit machines, or disable the pass-through functions >altogether. I expect that the check for 32 bit addressable memory to be >controversial in that it can be incorrect in non-Dell non-Intel systems >that PERC would never be installed under, the alternative is to disable >pass-through in all cases which could be reported as another regression. >+static int aac_scsi_32_64(struct fib * fib, struct scsi_cmnd * cmd) >+{ >+ if ((sizeof(dma_addr_t) > 4) && >+ (num_physpages > (0xFFFFFFFFULL >> PAGE_SHIFT)) && >+ (fib->dev->adapter_info.options & AAC_OPT_SGMAP_HOST64)) >+ return FAILED; >+ return aac_scsi_32(fib, cmd); >+} I saw the same thing in the 64-bit dpt_i2o driver, but I wonder, shouldn't this be something like: #include <linux/bootmem.h> if ((sizeof(dma_addr_t) > 4) && (max_pfn > (0xFFFFFFFFULL >> PAGE_SHIFT)) && (fib->dev->adapter_info.options & AAC_OPT_SGMAP_HOST64)) e.g. use max_pfn instead of num_physpages ? Mike. - To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html