>Index: linux-2.6/drivers/scsi/megaraid/megaraid_sas.h >=================================================================== >--- linux-2.6.orig/drivers/scsi/megaraid/megaraid_sas.h >2005-10-04 20:07:32.000000000 +0200 >+++ linux-2.6/drivers/scsi/megaraid/megaraid_sas.h >2005-10-04 20:28:27.000000000 +0200 >@@ -1124,12 +1124,10 @@ > } frame; > struct compat_iovec sgl[MAX_IOCTL_SGE]; } >__attribute__ ((packed)); >- >-#define MEGASAS_IOC_FIRMWARE _IOWR('M', 1, struct >compat_megasas_iocpacket) >-#else >-#define MEGASAS_IOC_FIRMWARE _IOWR('M', 1, struct megasas_iocpacket) > #endif > >+#define MEGASAS_IOC_FIRMWARE _IOWR('M', 1, struct megasas_iocpacket) >+#define MEGASAS_IOC_FIRMWARE32 _IOWR('M', 1, struct >compat_megasas_iocpacket) > #define MEGASAS_IOC_GET_AEN _IOW('M', 3, struct megasas_aen) > > struct megasas_mgmt_info { > MEGASAS_IOC_FIRMWARE32 which is defined outside CONFIG_COMPAT is using struct compat_megasas_iocpacket which is inside the CONFIG_COMPAT. It still works because MEGASAS_IOC_FIRMWARE32 is not referenced elsewhere in the code. I wasn't sure if you inteneded this to be like this (to force driver not to use FIRMWARE32 value in outside CONFIG_COMPAT). The patch looks ok to me. Sreenivas - : 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