From: Geert U. <ge...@li...> - 2002-09-24 08:45:07
|
On Tue, 24 Sep 2002, [iso-8859-2] Krystian Bac=B3awski wrote: > I think I found place where kernel hungs up when it tries to probe IDE > hardware. I played a bit with ide-probe.c and found out that kernel hun= gs > up on enable_irq. I've added two lines with printk. First is reached, > second not. Code below was cut out from ide-probe.c file, > probe_hwif:554-566. >=20 > __restore_flags(flags); /* local CPU only */ > printk("probe_hwif: enabling irq\n"); /* debug */ > if (hwif->hw.ack_intr && hwif->irq) > enable_irq(hwif->irq); > printk("probe_hwif: irq enabled\n"); /* debug */ > for (unit =3D 0; unit < MAX_DRIVES; ++unit) { > ide_drive_t *drive =3D &hwif->drives[unit]; > if (drive->present) { > ide_tuneproc_t *tuneproc =3D HWIF(drive)->tunep= roc; > if (tuneproc !=3D NULL && drive->autotune =3D=3D= 1) > tuneproc(drive, 255); > } > } >=20 > I hope that information would help a bit in tracing a bug. What's the manufacturer and model of your disk? I remember fixing an issue with some WD disks many years ago, where the d= isk didn't honor the `disable interrupt' IDE command, causing a lock up on A4= 000 when interrupts were enabled. It didn't show up on PC because on PC the = IDE interrupt wasn't shared. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m6= 8k.org In personal conversations with technical people, I call myself a hacker. = But when I'm talking to journalists I just say "programmer" or something like= that. -- Linus Torvalds |