Ingo Molnar wrote: > > On Fri, 5 Nov 1999, David Mansfield wrote: > > > Well, I've never gotten a single SCSI error from the controller... not to > > mention that the block being requested is WAY beyond the end of the > > device. If this wasn't a RAID device, this would be one of the 'Attempt > > to access beyond end of device' errors that non-raid users have reported > > many times for the 2.2 series kernels. > > > > I have also gotten the error when not under any load, about once a month > > or so, but never with the alarming frequency of last night! > > it's 99.99% a problem with the disk. The RAID0 code has not had any > significant changes (due to it's simplicity) in the last couple of years. > We never rule out software bugs, but this is one of those cases where it's > way, way down in the list of potential problem sources. OK, since this raid is on an U2W card, then my current patch set might help. There was a bug in some U2W hardware that was found by Justin Gibbs (sorry, I don't have the tools to be able to identify some of these types of bugs) where a bit on the cards DFSTATUS register was getting set early. It would correct itself within 5 cycles, so the fix was to test the bit 5 times and see if it *still* was set. That would catch the glitch. Go figure..... Anyway, I'm attached a test patch for you to try out. If it fixes your problem then it's a likely candidate as the final 5.1.21 driver patch. -- Doug Ledford <[EMAIL PROTECTED]> Opinions expressed are my own, but they should be everybody's.
--- linux/drivers/scsi/aic7xxx/aic7xxx.seq.save Wed Nov 10 15:20:13 1999 +++ linux/drivers/scsi/aic7xxx/aic7xxx.seq Wed Nov 10 15:36:07 1999 @@ -444,10 +444,10 @@ * STCNT may have been cleared, so restore it from the residual field. */ data_phase_reinit: - if ((p->features & AHC_CMD_CHAN) != 0) { - if ((p->features & AHC_ULTRA2) != 0) { - bmov HCNT, SCB_RESID_DCNT, 3; - } + if ((p->features & AHC_ULTRA2) != 0) { + bmov HADDR, SHADDR, 4; + bmov HCNT, SCB_RESID_DCNT, 3; + } else if ((p->features & AHC_CMD_CHAN) != 0) { bmov STCNT, SCB_RESID_DCNT, 3; } else { mvi DINDEX, STCNT; @@ -658,8 +658,20 @@ test DFCNTRL, DIRECTION jnz ultra2_dmahalt; and DFCNTRL, ~SCSIEN; test DFCNTRL, SCSIEN jnz .; +ultra2_dmafifoflush: or DFCNTRL, FIFOFLUSH; test DFSTATUS, FIFOEMP jz . - 1; + /* + * hardware bug alert! This needless set of jumps is to + * protect against a FIFOEMP status bit glitch in the + * silicon. + */ + test DFSTATUS, FIFOEMP jz ultra2_dmafifoflush; + test DFSTATUS, FIFOEMP jz ultra2_dmafifoflush; + test DFSTATUS, FIFOEMP jz ultra2_dmafifoflush; + test DFSTATUS, FIFOEMP jz ultra2_dmafifoflush; + test DFSTATUS, FIFOEMP jz ultra2_dmafifoflush; + test DFSTATUS, MREQPEND jnz .; ultra2_dmahalt: and DFCNTRL, ~(SCSIEN|HDMAEN); test DFCNTRL, HDMAEN jnz .; @@ -678,12 +690,13 @@ /* * Load HADDR and HCNT. */ - if ((p->features & AHC_CMD_CHAN) != 0) { + if ((p->features & AHC_ULTRA2) != 0) { bmov HADDR, SCB_CMDPTR, 5; bmov HCNT[1], ALLZEROS, 2; - if ((p->features & AHC_ULTRA2) == 0) { - bmov STCNT, HCNT, 3; - } + } else if ((p->features & AHC_CMD_CHAN) != 0) { + bmov HADDR, SCB_CMDPTR, 5; + bmov HCNT[1], ALLZEROS, 2; + bmov STCNT, HCNT, 3; } else { mvi DINDEX, HADDR; mvi SCB_CMDPTR call bcopy_5; @@ -701,8 +714,10 @@ test SSTAT0, DMADONE jnz p_command_ultra2_dma_done; test SSTAT1,PHASEMIS jz p_command_dma_loop; /* ie. underrun */ p_command_ultra2_dma_done: - and DFCNTRL, ~(SCSIEN|HDMAEN); + and DFCNTRL, ~HDMAEN; test DFCNTRL, HDMAEN jnz .; + and DFCNTRL, ~SCSIEN; + test DFCNTRL, SCSIEN jnz .; or SXFRCTL0, CLRSTCNT|CLRCHN; } jmp ITloop; --- linux/drivers/scsi/aic7xxx.c.save Wed Nov 10 15:19:35 1999 +++ linux/drivers/scsi/aic7xxx.c Wed Nov 10 15:19:47 1999 @@ -270,7 +270,7 @@ 0, 0, 0, NULL, NULL, NULL, NULL, NULL, NULL, NULL }; -#define AIC7XXX_C_VERSION "5.1.20" +#define AIC7XXX_C_VERSION "5.1.21" #define NUMBER(arr) (sizeof(arr) / sizeof(arr[0])) #define MIN(a,b) (((a) < (b)) ? (a) : (b)) --- linux/drivers/scsi/aic7xxx_seq.c.save Wed Nov 10 15:20:00 1999 +++ linux/drivers/scsi/aic7xxx_seq.c Wed Nov 10 15:36:16 1999 @@ -26,12 +26,12 @@ 0x00, 0x4d, 0x12, 0x70, 0x01, 0x4e, 0x9c, 0x18, 0xbf, 0x60, 0xc0, 0x08, - 0x00, 0x6a, 0x92, 0x5c, + 0x00, 0x6a, 0xa8, 0x5c, 0xff, 0x4e, 0xc8, 0x18, - 0x02, 0x6a, 0xa8, 0x5b, + 0x02, 0x6a, 0xbe, 0x5b, 0xff, 0x52, 0x20, 0x09, 0x0d, 0x6a, 0x6a, 0x00, - 0x00, 0x52, 0x1e, 0x5c, + 0x00, 0x52, 0x34, 0x5c, 0x03, 0xb0, 0x52, 0x31, 0xff, 0xb0, 0x52, 0x09, 0xff, 0xb1, 0x54, 0x09, @@ -76,7 +76,7 @@ 0x10, 0x03, 0xfc, 0x78, 0xff, 0x50, 0xc8, 0x08, 0x88, 0x6a, 0xcc, 0x00, - 0x49, 0x6a, 0x0e, 0x5c, + 0x49, 0x6a, 0x24, 0x5c, 0x01, 0x6a, 0x26, 0x01, 0xff, 0x6a, 0xca, 0x08, 0x08, 0x01, 0x02, 0x00, @@ -117,11 +117,11 @@ 0xff, 0x65, 0xca, 0x18, 0xff, 0x65, 0xd8, 0x68, 0x0a, 0x93, 0x26, 0x01, - 0x00, 0x65, 0x84, 0x5c, + 0x00, 0x65, 0x9a, 0x5c, 0x40, 0x51, 0xf0, 0x78, 0xe4, 0x6a, 0x06, 0x00, 0x08, 0x01, 0x02, 0x00, - 0x04, 0x6a, 0x40, 0x5b, + 0x04, 0x6a, 0x56, 0x5b, 0x01, 0x50, 0xa0, 0x18, 0x00, 0x50, 0xf6, 0xe0, 0xff, 0x6a, 0xa0, 0x08, @@ -147,13 +147,13 @@ 0x08, 0x6a, 0x66, 0x58, 0x80, 0x6a, 0x68, 0x00, 0x80, 0x36, 0x6c, 0x00, - 0x00, 0x65, 0xf2, 0x5b, + 0x00, 0x65, 0x08, 0x5c, 0xff, 0x3d, 0xc8, 0x08, - 0xbf, 0x64, 0x58, 0x79, - 0x80, 0x64, 0x0e, 0x72, - 0xa0, 0x64, 0x3a, 0x72, - 0xc0, 0x64, 0x32, 0x72, - 0xe0, 0x64, 0x7a, 0x72, + 0xbf, 0x64, 0x5a, 0x79, + 0x80, 0x64, 0x1c, 0x72, + 0xa0, 0x64, 0x50, 0x72, + 0xc0, 0x64, 0x48, 0x72, + 0xe0, 0x64, 0x90, 0x72, 0x01, 0x6a, 0x22, 0x01, 0x00, 0x65, 0x22, 0x41, 0xf7, 0x11, 0x22, 0x08, @@ -169,16 +169,17 @@ 0xdf, 0x01, 0x02, 0x08, 0x01, 0x6a, 0x7a, 0x00, 0xff, 0x6a, 0x6c, 0x0c, + 0x04, 0x14, 0x10, 0x31, 0x03, 0xa9, 0x18, 0x31, 0x03, 0xa9, 0x10, 0x30, 0x08, 0x6a, 0xcc, 0x00, - 0xa9, 0x6a, 0x08, 0x5c, - 0x00, 0x65, 0x78, 0x41, + 0xa9, 0x6a, 0x1e, 0x5c, + 0x00, 0x65, 0x7a, 0x41, 0xa8, 0x6a, 0x6a, 0x00, 0x79, 0x6a, 0x6a, 0x00, - 0x40, 0x3d, 0x60, 0x69, + 0x40, 0x3d, 0x62, 0x69, 0x04, 0x35, 0x6a, 0x00, - 0x00, 0x65, 0x62, 0x5b, + 0x00, 0x65, 0x78, 0x5b, 0x80, 0x6a, 0xd4, 0x01, 0x10, 0x36, 0x4e, 0x69, 0x10, 0x36, 0x6c, 0x00, @@ -186,11 +187,11 @@ 0x03, 0x8c, 0x10, 0x30, 0x05, 0xa3, 0x70, 0x30, 0x88, 0x6a, 0xcc, 0x00, - 0xac, 0x6a, 0x00, 0x5c, - 0x00, 0x65, 0xfa, 0x5b, + 0xac, 0x6a, 0x16, 0x5c, + 0x00, 0x65, 0x10, 0x5c, 0x38, 0x6a, 0xcc, 0x00, - 0xa3, 0x6a, 0x04, 0x5c, - 0xff, 0x38, 0x88, 0x69, + 0xa3, 0x6a, 0x1a, 0x5c, + 0xff, 0x38, 0x8a, 0x69, 0x80, 0x02, 0x04, 0x00, 0xe7, 0x35, 0x6a, 0x08, 0x03, 0x69, 0x18, 0x31, @@ -198,51 +199,51 @@ 0xff, 0x6a, 0x10, 0x00, 0xff, 0x6a, 0x12, 0x00, 0xff, 0x6a, 0x14, 0x00, - 0x01, 0x38, 0x8c, 0x61, + 0x01, 0x38, 0x8e, 0x61, 0xbf, 0x35, 0x6a, 0x08, 0xff, 0x69, 0xca, 0x08, 0xff, 0x35, 0x26, 0x09, - 0x04, 0x0b, 0x90, 0x69, + 0x04, 0x0b, 0x92, 0x69, + 0x04, 0x0b, 0x9e, 0x69, + 0x10, 0x0c, 0x94, 0x79, 0x04, 0x0b, 0x9c, 0x69, - 0x10, 0x0c, 0x92, 0x79, - 0x04, 0x0b, 0x9a, 0x69, 0xff, 0x6a, 0xca, 0x08, - 0x00, 0x35, 0x4a, 0x5b, - 0x80, 0x02, 0xf0, 0x69, - 0xff, 0x65, 0xe0, 0x79, + 0x00, 0x35, 0x60, 0x5b, + 0x80, 0x02, 0xf2, 0x69, + 0xff, 0x65, 0xe2, 0x79, 0xff, 0x38, 0x70, 0x18, - 0xff, 0x38, 0xe0, 0x79, - 0x80, 0xea, 0xbc, 0x61, + 0xff, 0x38, 0xe2, 0x79, + 0x80, 0xea, 0xbe, 0x61, 0xef, 0x38, 0xc8, 0x18, 0x80, 0x6a, 0xc8, 0x00, - 0x00, 0x65, 0xae, 0x49, + 0x00, 0x65, 0xb0, 0x49, 0x33, 0x38, 0xc8, 0x28, 0xff, 0x64, 0xd0, 0x09, 0x04, 0x39, 0xc0, 0x31, 0x09, 0x6a, 0xd6, 0x01, - 0x80, 0xeb, 0xb4, 0x79, + 0x80, 0xeb, 0xb6, 0x79, 0xf7, 0xeb, 0xd6, 0x09, - 0x08, 0xeb, 0xb8, 0x69, + 0x08, 0xeb, 0xba, 0x69, 0x01, 0x6a, 0xd6, 0x01, 0x08, 0xe9, 0x10, 0x31, 0x03, 0x8c, 0x10, 0x30, 0x88, 0x6a, 0xcc, 0x00, - 0x39, 0x6a, 0x06, 0x5c, + 0x39, 0x6a, 0x1c, 0x5c, 0x08, 0x6a, 0x18, 0x01, 0xff, 0x6a, 0x1a, 0x09, 0xff, 0x6a, 0x1c, 0x09, 0x0d, 0x93, 0x26, 0x01, - 0x00, 0x65, 0x84, 0x5c, - 0x88, 0x6a, 0x74, 0x5c, - 0x00, 0x65, 0xfa, 0x5b, + 0x00, 0x65, 0x9a, 0x5c, + 0x88, 0x6a, 0x8a, 0x5c, + 0x00, 0x65, 0x10, 0x5c, 0xff, 0x6a, 0xc8, 0x08, 0x08, 0x39, 0x72, 0x18, 0x00, 0x3a, 0x74, 0x20, - 0x01, 0x0c, 0xd8, 0x79, - 0x10, 0x0c, 0x78, 0x79, + 0x01, 0x0c, 0xda, 0x79, + 0x10, 0x0c, 0x7a, 0x79, 0xff, 0x35, 0x26, 0x09, - 0x04, 0x0b, 0xde, 0x69, - 0x00, 0x65, 0xf8, 0x59, + 0x04, 0x0b, 0xe0, 0x69, + 0x00, 0x65, 0xfa, 0x59, 0x03, 0x08, 0x52, 0x31, 0xff, 0x38, 0x50, 0x09, 0xff, 0x08, 0x52, 0x09, @@ -250,265 +251,275 @@ 0xff, 0x0a, 0x56, 0x09, 0xff, 0x38, 0x50, 0x09, 0x00, 0x65, 0x22, 0x41, - 0x00, 0x65, 0xf8, 0x59, + 0x00, 0x65, 0xfa, 0x59, 0x7f, 0x02, 0x04, 0x08, 0xe1, 0x6a, 0x22, 0x01, 0x00, 0x65, 0x22, 0x41, - 0x04, 0x93, 0x02, 0x6a, + 0x04, 0x93, 0x10, 0x6a, 0xdf, 0x93, 0x26, 0x09, - 0x20, 0x93, 0xfc, 0x69, + 0x20, 0x93, 0xfe, 0x69, 0x02, 0x93, 0x26, 0x01, - 0x01, 0x94, 0xfe, 0x79, + 0x01, 0x94, 0x00, 0x7a, + 0x01, 0x94, 0x00, 0x7a, + 0x01, 0x94, 0x00, 0x7a, + 0x01, 0x94, 0x00, 0x7a, + 0x01, 0x94, 0x00, 0x7a, + 0x01, 0x94, 0x00, 0x7a, + 0x10, 0x94, 0x0e, 0x6a, 0xd7, 0x93, 0x26, 0x09, - 0x08, 0x93, 0x04, 0x6a, + 0x08, 0x93, 0x12, 0x6a, 0x03, 0x08, 0x52, 0x31, 0xff, 0x38, 0x50, 0x09, 0x12, 0x01, 0x02, 0x00, 0xff, 0x6a, 0xd4, 0x0c, - 0x00, 0x65, 0x62, 0x5b, + 0x00, 0x65, 0x78, 0x5b, + 0x05, 0xb4, 0x10, 0x31, + 0x02, 0x6a, 0x1a, 0x31, 0x05, 0xb4, 0x10, 0x31, 0x02, 0x6a, 0x1a, 0x31, 0x03, 0x8c, 0x10, 0x30, 0x88, 0x6a, 0xcc, 0x00, - 0xb4, 0x6a, 0x04, 0x5c, + 0xb4, 0x6a, 0x1a, 0x5c, 0xff, 0x6a, 0x1a, 0x09, 0xff, 0x6a, 0x1c, 0x09, - 0x00, 0x65, 0xfa, 0x5b, - 0x3d, 0x6a, 0x4a, 0x5b, + 0x00, 0x65, 0x10, 0x5c, + 0x3d, 0x6a, 0x60, 0x5b, 0xac, 0x6a, 0x26, 0x01, - 0x04, 0x0b, 0x24, 0x6a, - 0x01, 0x0b, 0x2a, 0x6a, - 0x10, 0x0c, 0x26, 0x7a, - 0xd7, 0x93, 0x26, 0x09, - 0x08, 0x93, 0x2c, 0x6a, + 0x04, 0x0b, 0x36, 0x6a, + 0x01, 0x0b, 0x3c, 0x6a, + 0x10, 0x0c, 0x38, 0x7a, + 0xf7, 0x93, 0x26, 0x09, + 0x08, 0x93, 0x3e, 0x6a, + 0xdf, 0x93, 0x26, 0x09, + 0x20, 0x93, 0x42, 0x6a, 0x12, 0x01, 0x02, 0x00, 0x00, 0x65, 0x22, 0x41, - 0x00, 0x65, 0x62, 0x5b, + 0x00, 0x65, 0x78, 0x5b, 0xff, 0x06, 0x44, 0x09, 0x00, 0x65, 0x22, 0x41, 0x10, 0x3d, 0x06, 0x00, 0xff, 0x34, 0xca, 0x08, - 0x80, 0x65, 0x5e, 0x62, + 0x80, 0x65, 0x74, 0x62, 0x0f, 0xa1, 0xca, 0x08, 0x07, 0xa1, 0xca, 0x08, 0x40, 0xa0, 0xc8, 0x08, 0x00, 0x65, 0xca, 0x00, 0x80, 0x65, 0xca, 0x00, - 0x80, 0xa0, 0x4e, 0x7a, + 0x80, 0xa0, 0x64, 0x7a, 0xff, 0x65, 0x0c, 0x08, - 0x00, 0x65, 0x60, 0x42, - 0x20, 0xa0, 0x66, 0x7a, + 0x00, 0x65, 0x76, 0x42, + 0x20, 0xa0, 0x7c, 0x7a, 0xff, 0x65, 0x0c, 0x08, - 0x00, 0x65, 0xf2, 0x5b, - 0xa0, 0x3d, 0x6e, 0x62, + 0x00, 0x65, 0x08, 0x5c, + 0xa0, 0x3d, 0x84, 0x62, 0x23, 0xa0, 0x0c, 0x08, - 0x00, 0x65, 0xf2, 0x5b, - 0xa0, 0x3d, 0x6e, 0x62, - 0x00, 0xb9, 0x66, 0x42, - 0xff, 0x65, 0x66, 0x62, + 0x00, 0x65, 0x08, 0x5c, + 0xa0, 0x3d, 0x84, 0x62, + 0x00, 0xb9, 0x7c, 0x42, + 0xff, 0x65, 0x7c, 0x62, 0xa1, 0x6a, 0x22, 0x01, 0xff, 0x6a, 0xd4, 0x08, - 0x10, 0x51, 0x6e, 0x72, + 0x10, 0x51, 0x84, 0x72, 0x40, 0x6a, 0x18, 0x00, 0xff, 0x65, 0x0c, 0x08, - 0x00, 0x65, 0xf2, 0x5b, - 0xa0, 0x3d, 0x38, 0x72, + 0x00, 0x65, 0x08, 0x5c, + 0xa0, 0x3d, 0x4e, 0x72, 0x40, 0x6a, 0x18, 0x00, 0xff, 0x34, 0xa6, 0x08, - 0x80, 0x34, 0x76, 0x62, + 0x80, 0x34, 0x8c, 0x62, 0x7f, 0xa0, 0x40, 0x09, 0x08, 0x6a, 0x68, 0x00, 0x00, 0x65, 0x22, 0x41, - 0x64, 0x6a, 0x3a, 0x5b, - 0x80, 0x64, 0xea, 0x6a, - 0x04, 0x64, 0xcc, 0x72, - 0x02, 0x64, 0xd2, 0x72, - 0x00, 0x6a, 0x94, 0x72, - 0x03, 0x64, 0xe6, 0x72, - 0x01, 0x64, 0xc8, 0x72, - 0x07, 0x64, 0x28, 0x73, - 0x08, 0x64, 0x90, 0x72, + 0x64, 0x6a, 0x50, 0x5b, + 0x80, 0x64, 0x00, 0x6b, + 0x04, 0x64, 0xe2, 0x72, + 0x02, 0x64, 0xe8, 0x72, + 0x00, 0x6a, 0xaa, 0x72, + 0x03, 0x64, 0xfc, 0x72, + 0x01, 0x64, 0xde, 0x72, + 0x07, 0x64, 0x3e, 0x73, + 0x08, 0x64, 0xa6, 0x72, 0x11, 0x6a, 0x22, 0x01, - 0x07, 0x6a, 0x2c, 0x5b, + 0x07, 0x6a, 0x42, 0x5b, 0xff, 0x06, 0xd4, 0x08, 0x00, 0x65, 0x22, 0x41, - 0xff, 0xa8, 0x98, 0x6a, - 0xff, 0xa2, 0xb0, 0x7a, + 0xff, 0xa8, 0xae, 0x6a, + 0xff, 0xa2, 0xc6, 0x7a, 0x01, 0x6a, 0x6a, 0x00, - 0x00, 0xb9, 0x1e, 0x5c, - 0xff, 0xa2, 0xb0, 0x7a, + 0x00, 0xb9, 0x34, 0x5c, + 0xff, 0xa2, 0xc6, 0x7a, 0x71, 0x6a, 0x22, 0x01, 0xff, 0x6a, 0xd4, 0x08, - 0x40, 0x51, 0xb0, 0x62, + 0x40, 0x51, 0xc6, 0x62, 0x0d, 0x6a, 0x6a, 0x00, - 0x00, 0xb9, 0x1e, 0x5c, + 0x00, 0xb9, 0x34, 0x5c, 0xff, 0x3e, 0x74, 0x09, 0xff, 0x90, 0x7c, 0x08, 0x00, 0x65, 0x50, 0x58, 0x00, 0x65, 0x34, 0x41, - 0x20, 0xa0, 0xb8, 0x6a, + 0x20, 0xa0, 0xce, 0x6a, 0xff, 0x37, 0xc8, 0x08, - 0x00, 0x6a, 0xc8, 0x5b, - 0xff, 0x6a, 0xde, 0x5b, + 0x00, 0x6a, 0xde, 0x5b, + 0xff, 0x6a, 0xf4, 0x5b, 0xff, 0xf8, 0xc8, 0x08, 0xff, 0x4f, 0xc8, 0x08, - 0x01, 0x6a, 0xc8, 0x5b, - 0x00, 0xb9, 0xde, 0x5b, + 0x01, 0x6a, 0xde, 0x5b, + 0x00, 0xb9, 0xf4, 0x5b, 0x01, 0x4f, 0x9e, 0x18, 0x02, 0x6a, 0x22, 0x01, - 0x00, 0x65, 0x8c, 0x5c, + 0x00, 0x65, 0xa2, 0x5c, 0x00, 0x65, 0x34, 0x41, 0x41, 0x6a, 0x22, 0x01, 0x00, 0x65, 0x22, 0x41, 0x04, 0xa0, 0x40, 0x01, - 0x00, 0x65, 0xa4, 0x5c, + 0x00, 0x65, 0xba, 0x5c, 0x00, 0x65, 0x34, 0x41, - 0x10, 0x36, 0x90, 0x7a, + 0x10, 0x36, 0xa6, 0x7a, 0x05, 0x38, 0x46, 0x31, 0x04, 0x14, 0x58, 0x31, 0x03, 0xa9, 0x60, 0x31, 0xa3, 0x6a, 0xcc, 0x00, - 0x38, 0x6a, 0x04, 0x5c, + 0x38, 0x6a, 0x1a, 0x5c, 0xac, 0x6a, 0xcc, 0x00, - 0x14, 0x6a, 0x06, 0x5c, - 0xa9, 0x6a, 0x08, 0x5c, - 0x00, 0x65, 0x90, 0x42, + 0x14, 0x6a, 0x1c, 0x5c, + 0xa9, 0x6a, 0x1e, 0x5c, + 0x00, 0x65, 0xa6, 0x42, 0xef, 0x36, 0x6c, 0x08, - 0x00, 0x65, 0x90, 0x42, + 0x00, 0x65, 0xa6, 0x42, 0x0f, 0x64, 0xc8, 0x08, 0x07, 0x64, 0xc8, 0x08, 0x00, 0x37, 0x6e, 0x00, 0xff, 0x6a, 0xa4, 0x00, - 0x00, 0x65, 0x98, 0x5b, - 0xff, 0x51, 0xfc, 0x72, - 0x20, 0x36, 0x06, 0x7b, - 0x00, 0x90, 0x86, 0x5b, - 0x00, 0x65, 0x08, 0x43, + 0x00, 0x65, 0xae, 0x5b, + 0xff, 0x51, 0x12, 0x73, + 0x20, 0x36, 0x1c, 0x7b, + 0x00, 0x90, 0x9c, 0x5b, + 0x00, 0x65, 0x1e, 0x43, 0xff, 0x06, 0xd4, 0x08, - 0x00, 0x65, 0xf2, 0x5b, - 0xe0, 0x3d, 0x22, 0x63, - 0x20, 0x12, 0x22, 0x63, - 0x51, 0x6a, 0x30, 0x5b, - 0x00, 0x65, 0x80, 0x5b, + 0x00, 0x65, 0x08, 0x5c, + 0xe0, 0x3d, 0x38, 0x63, + 0x20, 0x12, 0x38, 0x63, + 0x51, 0x6a, 0x46, 0x5b, + 0x00, 0x65, 0x96, 0x5b, 0xff, 0x37, 0xc8, 0x08, - 0x00, 0xa1, 0x1a, 0x63, - 0x04, 0xa0, 0x1a, 0x7b, + 0x00, 0xa1, 0x30, 0x63, + 0x04, 0xa0, 0x30, 0x7b, 0xfb, 0xa0, 0x40, 0x09, 0x80, 0x36, 0x6c, 0x00, - 0x80, 0xa0, 0x90, 0x7a, + 0x80, 0xa0, 0xa6, 0x7a, 0x7f, 0xa0, 0x40, 0x09, - 0xff, 0x6a, 0x2c, 0x5b, - 0x00, 0x65, 0x90, 0x42, - 0x04, 0xa0, 0x20, 0x7b, - 0x00, 0x65, 0xa4, 0x5c, - 0x00, 0x65, 0x22, 0x43, - 0x00, 0x65, 0x8c, 0x5c, + 0xff, 0x6a, 0x42, 0x5b, + 0x00, 0x65, 0xa6, 0x42, + 0x04, 0xa0, 0x36, 0x7b, + 0x00, 0x65, 0xba, 0x5c, + 0x00, 0x65, 0x38, 0x43, + 0x00, 0x65, 0xa2, 0x5c, 0x31, 0x6a, 0x22, 0x01, - 0x0c, 0x6a, 0x2c, 0x5b, - 0x00, 0x65, 0x90, 0x42, + 0x0c, 0x6a, 0x42, 0x5b, + 0x00, 0x65, 0xa6, 0x42, 0x61, 0x6a, 0x22, 0x01, - 0x00, 0x65, 0x90, 0x42, + 0x00, 0x65, 0xa6, 0x42, 0x10, 0x3d, 0x06, 0x00, 0xff, 0x65, 0x68, 0x0c, 0xff, 0x06, 0xd4, 0x08, - 0x01, 0x0c, 0x32, 0x7b, - 0x04, 0x0c, 0x32, 0x6b, + 0x01, 0x0c, 0x48, 0x7b, + 0x04, 0x0c, 0x48, 0x6b, 0xe0, 0x03, 0x7a, 0x08, - 0xe0, 0x3d, 0x46, 0x63, + 0xe0, 0x3d, 0x5c, 0x63, 0xff, 0x65, 0xcc, 0x08, 0xff, 0x12, 0xda, 0x0c, 0xff, 0x06, 0xd4, 0x0c, 0xff, 0x65, 0x0c, 0x08, - 0x02, 0x0b, 0x42, 0x7b, + 0x02, 0x0b, 0x58, 0x7b, 0xff, 0x6a, 0xd4, 0x0c, 0xd1, 0x6a, 0x22, 0x01, 0x00, 0x65, 0x22, 0x41, 0xff, 0x65, 0x26, 0x09, - 0x01, 0x0b, 0x5a, 0x6b, - 0x10, 0x0c, 0x4c, 0x7b, - 0x04, 0x0b, 0x54, 0x6b, + 0x01, 0x0b, 0x70, 0x6b, + 0x10, 0x0c, 0x62, 0x7b, + 0x04, 0x0b, 0x6a, 0x6b, 0xff, 0x6a, 0xca, 0x08, - 0x04, 0x93, 0x58, 0x6b, - 0x01, 0x94, 0x56, 0x7b, - 0x10, 0x94, 0x58, 0x6b, + 0x04, 0x93, 0x6e, 0x6b, + 0x01, 0x94, 0x6c, 0x7b, + 0x10, 0x94, 0x6e, 0x6b, 0xc7, 0x93, 0x26, 0x09, 0xff, 0x99, 0xd4, 0x08, - 0x38, 0x93, 0x5c, 0x6b, + 0x38, 0x93, 0x72, 0x6b, 0xff, 0x6a, 0xd4, 0x0c, - 0x80, 0x36, 0x60, 0x6b, + 0x80, 0x36, 0x76, 0x6b, 0x21, 0x6a, 0x22, 0x05, 0xff, 0x65, 0x20, 0x09, - 0xff, 0x51, 0x6e, 0x63, + 0xff, 0x51, 0x84, 0x63, 0xff, 0x37, 0xc8, 0x08, - 0xa1, 0x6a, 0x7a, 0x43, + 0xa1, 0x6a, 0x90, 0x43, 0xff, 0x51, 0xc8, 0x08, - 0xb9, 0x6a, 0x7a, 0x43, + 0xb9, 0x6a, 0x90, 0x43, 0xff, 0x90, 0xa4, 0x08, - 0xff, 0xba, 0x7e, 0x73, + 0xff, 0xba, 0x94, 0x73, 0xff, 0xba, 0x20, 0x09, 0xff, 0x65, 0xca, 0x18, - 0x00, 0x6c, 0x72, 0x63, + 0x00, 0x6c, 0x88, 0x63, 0xff, 0x90, 0xca, 0x0c, 0xff, 0x6a, 0xca, 0x04, - 0x20, 0x36, 0x92, 0x7b, - 0x00, 0x90, 0x66, 0x5b, - 0xff, 0x65, 0x92, 0x73, - 0xff, 0x52, 0x90, 0x73, + 0x20, 0x36, 0xa8, 0x7b, + 0x00, 0x90, 0x7c, 0x5b, + 0xff, 0x65, 0xa8, 0x73, + 0xff, 0x52, 0xa6, 0x73, 0xff, 0xba, 0xcc, 0x08, 0xff, 0x52, 0x20, 0x09, 0xff, 0x66, 0x74, 0x09, 0xff, 0x65, 0x20, 0x0d, 0xff, 0xba, 0x7e, 0x0c, - 0x00, 0x6a, 0x92, 0x5c, + 0x00, 0x6a, 0xa8, 0x5c, 0x0d, 0x6a, 0x6a, 0x00, - 0x00, 0x51, 0x1e, 0x44, - 0xff, 0x3f, 0xec, 0x73, + 0x00, 0x51, 0x34, 0x44, + 0xff, 0x3f, 0x02, 0x74, 0xff, 0x6a, 0xa2, 0x00, - 0x00, 0x3f, 0x66, 0x5b, - 0xff, 0x65, 0xec, 0x73, + 0x00, 0x3f, 0x7c, 0x5b, + 0xff, 0x65, 0x02, 0x74, 0x20, 0x36, 0x6c, 0x00, - 0x20, 0xa0, 0xa6, 0x6b, + 0x20, 0xa0, 0xbc, 0x6b, 0xff, 0xb9, 0xa2, 0x0c, 0xff, 0x6a, 0xa2, 0x04, 0xff, 0x65, 0xa4, 0x08, 0xe0, 0x6a, 0xcc, 0x00, - 0x45, 0x6a, 0x12, 0x5c, + 0x45, 0x6a, 0x28, 0x5c, 0x01, 0x6a, 0xd0, 0x01, 0x09, 0x6a, 0xd6, 0x01, - 0x80, 0xeb, 0xb2, 0x7b, + 0x80, 0xeb, 0xc8, 0x7b, 0x01, 0x6a, 0xd6, 0x01, 0x01, 0xe9, 0xa4, 0x34, 0x88, 0x6a, 0xcc, 0x00, - 0x45, 0x6a, 0x12, 0x5c, + 0x45, 0x6a, 0x28, 0x5c, 0x01, 0x6a, 0x18, 0x01, 0xff, 0x6a, 0x1a, 0x09, 0xff, 0x6a, 0x1c, 0x09, 0x0d, 0x6a, 0x26, 0x01, - 0x00, 0x65, 0x84, 0x5c, + 0x00, 0x65, 0x9a, 0x5c, 0xff, 0x99, 0xa4, 0x0c, 0xff, 0x65, 0xa4, 0x08, 0xe0, 0x6a, 0xcc, 0x00, - 0x45, 0x6a, 0x12, 0x5c, + 0x45, 0x6a, 0x28, 0x5c, 0x01, 0x6a, 0xd0, 0x01, 0x01, 0x6a, 0xdc, 0x05, 0x88, 0x6a, 0xcc, 0x00, - 0x45, 0x6a, 0x12, 0x5c, + 0x45, 0x6a, 0x28, 0x5c, 0x01, 0x6a, 0x18, 0x01, 0xff, 0x6a, 0x1a, 0x09, 0xff, 0x6a, 0x1c, 0x09, 0x01, 0x6a, 0x26, 0x05, 0x01, 0x65, 0xd8, 0x31, 0x09, 0xee, 0xdc, 0x01, - 0x80, 0xee, 0xe2, 0x7b, + 0x80, 0xee, 0xf8, 0x7b, 0xff, 0x6a, 0xdc, 0x0d, 0xff, 0x65, 0x32, 0x09, 0x0a, 0x93, 0x26, 0x01, - 0x00, 0x65, 0x84, 0x44, + 0x00, 0x65, 0x9a, 0x44, 0xff, 0x37, 0xc8, 0x08, - 0x00, 0x6a, 0xa8, 0x5b, + 0x00, 0x6a, 0xbe, 0x5b, 0xff, 0x52, 0xa2, 0x0c, - 0x01, 0x0c, 0xf2, 0x7b, - 0x04, 0x0c, 0xf2, 0x6b, + 0x01, 0x0c, 0x08, 0x7c, + 0x04, 0x0c, 0x08, 0x6c, 0xe0, 0x03, 0x06, 0x08, 0xe0, 0x03, 0x7a, 0x0c, 0xff, 0x8c, 0x10, 0x08, @@ -531,29 +542,29 @@ 0x00, 0x6c, 0xda, 0x24, 0xff, 0x65, 0xc8, 0x08, 0xe0, 0x6a, 0xcc, 0x00, - 0x41, 0x6a, 0x0e, 0x5c, + 0x41, 0x6a, 0x24, 0x5c, 0xff, 0x90, 0xe2, 0x09, 0x20, 0x6a, 0xd0, 0x01, - 0x04, 0x35, 0x30, 0x7c, + 0x04, 0x35, 0x46, 0x7c, 0x1d, 0x6a, 0xdc, 0x01, - 0xdc, 0xee, 0x2c, 0x64, - 0x00, 0x65, 0x3c, 0x44, + 0xdc, 0xee, 0x42, 0x64, + 0x00, 0x65, 0x52, 0x44, 0x01, 0x6a, 0xdc, 0x01, 0x20, 0xa0, 0xd8, 0x31, 0x09, 0xee, 0xdc, 0x01, - 0x80, 0xee, 0x36, 0x7c, + 0x80, 0xee, 0x4c, 0x7c, 0x19, 0x6a, 0xdc, 0x01, - 0xd8, 0xee, 0x3a, 0x64, + 0xd8, 0xee, 0x50, 0x64, 0xff, 0x6a, 0xdc, 0x09, - 0x18, 0xee, 0x3e, 0x6c, + 0x18, 0xee, 0x54, 0x6c, 0xff, 0x6a, 0xd4, 0x0c, 0x88, 0x6a, 0xcc, 0x00, - 0x41, 0x6a, 0x0e, 0x5c, + 0x41, 0x6a, 0x24, 0x5c, 0x20, 0x6a, 0x18, 0x01, 0xff, 0x6a, 0x1a, 0x09, 0xff, 0x6a, 0x1c, 0x09, 0xff, 0x35, 0x26, 0x09, - 0x04, 0x35, 0x68, 0x6c, + 0x04, 0x35, 0x7e, 0x6c, 0xa0, 0x6a, 0xca, 0x00, 0x20, 0x65, 0xc8, 0x18, 0xff, 0x6c, 0x32, 0x09, @@ -564,14 +575,14 @@ 0xff, 0x6c, 0x32, 0x09, 0xff, 0x6c, 0x32, 0x09, 0xff, 0x6c, 0x32, 0x09, - 0x00, 0x65, 0x54, 0x64, + 0x00, 0x65, 0x6a, 0x64, 0x0a, 0x93, 0x26, 0x01, - 0x00, 0x65, 0x84, 0x5c, - 0x04, 0x35, 0x60, 0x7b, - 0xa0, 0x6a, 0x74, 0x5c, - 0x00, 0x65, 0x76, 0x5c, - 0x00, 0x65, 0x76, 0x5c, - 0x00, 0x65, 0x76, 0x44, + 0x00, 0x65, 0x9a, 0x5c, + 0x04, 0x35, 0x76, 0x7b, + 0xa0, 0x6a, 0x8a, 0x5c, + 0x00, 0x65, 0x8c, 0x5c, + 0x00, 0x65, 0x8c, 0x5c, + 0x00, 0x65, 0x8c, 0x44, 0xff, 0x65, 0xcc, 0x08, 0xff, 0x99, 0xda, 0x08, 0xff, 0x99, 0xda, 0x08, @@ -580,19 +591,19 @@ 0xff, 0x99, 0xda, 0x08, 0xff, 0x99, 0xda, 0x08, 0xff, 0x99, 0xda, 0x0c, - 0x08, 0x94, 0x84, 0x7c, + 0x08, 0x94, 0x9a, 0x7c, 0xf7, 0x93, 0x26, 0x09, - 0x08, 0x93, 0x88, 0x6c, + 0x08, 0x93, 0x9e, 0x6c, 0xff, 0x6a, 0xd4, 0x0c, 0xff, 0x40, 0x74, 0x09, 0xff, 0x90, 0x80, 0x08, 0xff, 0x6a, 0x72, 0x05, - 0xff, 0x40, 0xa0, 0x64, - 0xff, 0x3f, 0x98, 0x64, + 0xff, 0x40, 0xb6, 0x64, + 0xff, 0x3f, 0xae, 0x64, 0xff, 0x6a, 0xca, 0x04, 0xff, 0x3f, 0x20, 0x09, 0x01, 0x6a, 0x6a, 0x00, - 0x00, 0xb9, 0x1e, 0x5c, + 0x00, 0xb9, 0x34, 0x5c, 0xff, 0xba, 0x7e, 0x0c, 0xff, 0x40, 0x20, 0x09, 0xff, 0xba, 0x80, 0x0c, @@ -739,60 +750,62 @@ { aic7xxx_patch1_func, 68, 60, 1 }, { aic7xxx_patch8_func, 162, 1, 2 }, { aic7xxx_patch0_func, 163, 2, 1 }, - { aic7xxx_patch2_func, 167, 2, 3 }, - { aic7xxx_patch8_func, 167, 1, 1 }, - { aic7xxx_patch0_func, 169, 2, 1 }, - { aic7xxx_patch8_func, 172, 1, 2 }, - { aic7xxx_patch0_func, 173, 1, 1 }, - { aic7xxx_patch2_func, 177, 1, 1 }, - { aic7xxx_patch2_func, 180, 3, 2 }, - { aic7xxx_patch0_func, 183, 5, 1 }, - { aic7xxx_patch2_func, 191, 2, 3 }, - { aic7xxx_patch8_func, 191, 1, 1 }, - { aic7xxx_patch0_func, 193, 3, 1 }, - { aic7xxx_patch10_func, 196, 2, 1 }, - { aic7xxx_patch8_func, 198, 7, 2 }, - { aic7xxx_patch0_func, 205, 1, 1 }, - { aic7xxx_patch2_func, 210, 14, 3 }, - { aic7xxx_patch10_func, 223, 1, 1 }, - { aic7xxx_patch0_func, 224, 9, 1 }, - { aic7xxx_patch8_func, 238, 2, 1 }, - { aic7xxx_patch8_func, 240, 1, 1 }, - { aic7xxx_patch10_func, 241, 6, 3 }, - { aic7xxx_patch2_func, 241, 2, 2 }, - { aic7xxx_patch0_func, 243, 4, 1 }, - { aic7xxx_patch8_func, 248, 1, 1 }, - { aic7xxx_patch8_func, 252, 11, 1 }, - { aic7xxx_patch2_func, 264, 3, 3 }, - { aic7xxx_patch10_func, 266, 1, 1 }, - { aic7xxx_patch0_func, 267, 5, 1 }, - { aic7xxx_patch10_func, 272, 1, 2 }, - { aic7xxx_patch0_func, 273, 7, 1 }, - { aic7xxx_patch11_func, 287, 1, 2 }, - { aic7xxx_patch0_func, 288, 1, 1 }, - { aic7xxx_patch5_func, 348, 1, 2 }, - { aic7xxx_patch0_func, 349, 1, 1 }, - { aic7xxx_patch3_func, 352, 1, 1 }, - { aic7xxx_patch2_func, 362, 3, 2 }, - { aic7xxx_patch0_func, 365, 5, 1 }, - { aic7xxx_patch11_func, 373, 1, 2 }, - { aic7xxx_patch0_func, 374, 1, 1 }, - { aic7xxx_patch6_func, 379, 1, 1 }, - { aic7xxx_patch1_func, 416, 3, 1 }, - { aic7xxx_patch10_func, 421, 11, 1 }, - { aic7xxx_patch2_func, 469, 7, 2 }, - { aic7xxx_patch0_func, 476, 8, 1 }, - { aic7xxx_patch2_func, 485, 4, 2 }, - { aic7xxx_patch0_func, 489, 6, 1 }, - { aic7xxx_patch2_func, 495, 4, 2 }, - { aic7xxx_patch0_func, 499, 3, 1 }, - { aic7xxx_patch12_func, 509, 10, 1 }, - { aic7xxx_patch2_func, 528, 17, 4 }, - { aic7xxx_patch13_func, 536, 4, 2 }, - { aic7xxx_patch0_func, 540, 2, 1 }, - { aic7xxx_patch0_func, 545, 33, 1 }, - { aic7xxx_patch12_func, 578, 4, 1 }, - { aic7xxx_patch6_func, 582, 2, 1 }, - { aic7xxx_patch6_func, 585, 9, 1 }, + { aic7xxx_patch8_func, 167, 2, 4 }, + { aic7xxx_patch0_func, 169, 3, 3 }, + { aic7xxx_patch2_func, 169, 1, 2 }, + { aic7xxx_patch0_func, 170, 2, 1 }, + { aic7xxx_patch8_func, 173, 1, 2 }, + { aic7xxx_patch0_func, 174, 1, 1 }, + { aic7xxx_patch2_func, 178, 1, 1 }, + { aic7xxx_patch2_func, 181, 3, 2 }, + { aic7xxx_patch0_func, 184, 5, 1 }, + { aic7xxx_patch2_func, 192, 2, 3 }, + { aic7xxx_patch8_func, 192, 1, 1 }, + { aic7xxx_patch0_func, 194, 3, 1 }, + { aic7xxx_patch10_func, 197, 2, 1 }, + { aic7xxx_patch8_func, 199, 7, 2 }, + { aic7xxx_patch0_func, 206, 1, 1 }, + { aic7xxx_patch2_func, 211, 14, 3 }, + { aic7xxx_patch10_func, 224, 1, 1 }, + { aic7xxx_patch0_func, 225, 9, 1 }, + { aic7xxx_patch8_func, 239, 2, 1 }, + { aic7xxx_patch8_func, 241, 1, 1 }, + { aic7xxx_patch10_func, 242, 6, 3 }, + { aic7xxx_patch2_func, 242, 2, 2 }, + { aic7xxx_patch0_func, 244, 4, 1 }, + { aic7xxx_patch8_func, 249, 1, 1 }, + { aic7xxx_patch8_func, 253, 17, 1 }, + { aic7xxx_patch8_func, 271, 2, 4 }, + { aic7xxx_patch0_func, 273, 8, 3 }, + { aic7xxx_patch2_func, 273, 3, 2 }, + { aic7xxx_patch0_func, 276, 5, 1 }, + { aic7xxx_patch10_func, 281, 1, 2 }, + { aic7xxx_patch0_func, 282, 9, 1 }, + { aic7xxx_patch11_func, 298, 1, 2 }, + { aic7xxx_patch0_func, 299, 1, 1 }, + { aic7xxx_patch5_func, 359, 1, 2 }, + { aic7xxx_patch0_func, 360, 1, 1 }, + { aic7xxx_patch3_func, 363, 1, 1 }, + { aic7xxx_patch2_func, 373, 3, 2 }, + { aic7xxx_patch0_func, 376, 5, 1 }, + { aic7xxx_patch11_func, 384, 1, 2 }, + { aic7xxx_patch0_func, 385, 1, 1 }, + { aic7xxx_patch6_func, 390, 1, 1 }, + { aic7xxx_patch1_func, 427, 3, 1 }, + { aic7xxx_patch10_func, 432, 11, 1 }, + { aic7xxx_patch2_func, 480, 7, 2 }, + { aic7xxx_patch0_func, 487, 8, 1 }, + { aic7xxx_patch2_func, 496, 4, 2 }, + { aic7xxx_patch0_func, 500, 6, 1 }, + { aic7xxx_patch2_func, 506, 4, 2 }, + { aic7xxx_patch0_func, 510, 3, 1 }, + { aic7xxx_patch12_func, 520, 10, 1 }, + { aic7xxx_patch2_func, 539, 17, 4 }, + { aic7xxx_patch13_func, 547, 4, 2 }, + { aic7xxx_patch0_func, 551, 2, 1 }, + { aic7xxx_patch0_func, 556, 33, 1 }, + { aic7xxx_patch12_func, 589, 4, 1 }, + { aic7xxx_patch6_func, 593, 2, 1 }, + { aic7xxx_patch6_func, 596, 9, 1 }, };