disable packing of the TAG_TW_Device_Extension structure to prevent kernel unaligned accesses when accessing ioctl_wqueue. Fixes smartmontools kernel panic on alpha SMP Signed-off-by: Gabriele Gorla <gorlik@xxxxxxxxx> --- --- linux-2.6.22/drivers/scsi/3w-xxxx.h.orig 2007-09-01 17:49:22.000000000 -0700 +++ linux-2.6.22/drivers/scsi/3w-xxxx.h 2007-09-01 17:49:45.000000000 -0700 @@ -392,6 +392,8 @@ typedef struct TAG_TW_Passthru unsigned char padding[12]; } TW_Passthru; +#pragma pack() + typedef struct TAG_TW_Device_Extension { u32 base_addr; unsigned long *alignment_virtual_address[TW_Q_LENGTH]; @@ -430,6 +432,4 @@ typedef struct TAG_TW_Device_Extension { wait_queue_head_t ioctl_wqueue; } TW_Device_Extension; -#pragma pack() - #endif /* _3W_XXXX_H */ ____________________________________________________________________________________ Got a little couch potato? Check out fun summer activities for kids. http://search.yahoo.com/search?fr=oni_on_mail&p=summer+activities+for+kids&cs=bz - 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