Am Montag, den 07.08.2006, 00:51 +0900 schrieb Tejun Heo: > I'm not sure why the previous patch didn't kick in. The condition > should have been caught and EH_HARDRESET requested. Can you please > double check the patched kernel is running? You can put a little > printk() after the freeze: label in sil_interrupt() to be sure. That's > the only place where sata_sil freezes the port except for timing out. Sorry, i couldn't find a "freeze" label in sil_interrupt(). There's one in sil_host_intr(), but appending 'printk("THIS VERSION RUNS MODIFIED sata_sil!");' there, doesn't have any effect (it doesn't get printed out). That's the only freeze label i found in sata_sil.c. My original drivers/scsi/sata_sil.c was version 2.6.18-rc1. 'strings /lib/modules/2.6.18-rc1/kernel/drivers/scsi/sata_sil.ko' doesn't give any unexpected results: ---------------------- [...] <7>%s %s: version 2.0 <3>ata%u: XXX: qc=%p ctl=%x <3>ata%u: XXX: HSM=%d <6>ata%u.%02u: applying Seagate errata fix (mod15write workaround) <6>ata%u.%02u: applying Maxtor errata fix %s <4>%s %s: cache line size not set. Driver may not function <6>%s %s: Applying R_ERR on DMA activate FIS errata fix <3>ata%u: XXX: SATA_IRQ serror=%x <3>ata%u: XXX: BUSY status=%x THIS VERSION RUNS MODIFIED sata_sil! [...] ------------------------ The kernel was built with Debian's make-kpkg (make-kpkg --initrd kernel_image). Output is still the same. - Martin
Attachment:
signature.asc
Description: Dies ist ein digital signierter Nachrichtenteil