On Thu, Oct 15, 2009 at 02:46:13PM -0400, Martin K. Petersen wrote: > > The advent of DIF Type 2 devices exposed these missing break statements. Is there not a similar problem in scsi_host_dix_capable()? And are these performance path? If not, it might be nice to move them out of line and code them like this: unsigned scsi_host_dif_capable(struct Scsi_Host *shost, unsigned target_type) { static unsigned cap[4] = { 0, SHOST_DIF_TYPE1_PROTECTION, SHOST_DIF_TYPE2_PROTECTION, SHOST_DIF_TYPE3_PROTECTION }; unsigned type = cap[target_type]; return (shost->prot_capabilities & type) ? 1 : 0; } unsigned scsi_host_dix_capable(struct Scsi_Host *shost, unsigned target_type) { static unsigned cap[4] = { SHOST_DIX_TYPE0_PROTECTION, SHOST_DIX_TYPE1_PROTECTION, SHOST_DIF_TYPE2_PROTECTION, SHOST_DIF_TYPE3_PROTECTION }; unsigned type = cap[target_type]; return (shost->prot_capabilities & type) ? 1 : 0; } -- Matthew Wilcox Intel Open Source Technology Centre "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step." -- 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