From: Geert U. <ge...@li...> - 2002-09-24 10:00:45
|
On Tue, 24 Sep 2002, [iso-8859-2] Krystian Bac=B3awski wrote: > On Tue, 24 Sep 2002, Geert Uytterhoeven wrote: > > 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= hungs > > > up on enable_irq. I've added two lines with printk. First is reache= d, > > > 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)->t= uneproc; > > > 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. > >=20 > > What's the manufacturer and model of your disk? > >=20 > > I remember fixing an issue with some WD disks many years ago, where t= he disk > > didn't honor the `disable interrupt' IDE command, causing a lock up o= n A4000 > > when interrupts were enabled. It didn't show up on PC because on PC = the IDE > > interrupt wasn't shared. >=20 > As ide-probe says: > hda: ST31720A, ATA DISK drive > hdb: BCD 16XA CD-ROM, ATAPI CD/DVD-ROM drive I took a closer look at ide-probe.c and compared it to plain 2.4.18 from Marcelo. Apparently the enable_irq() (and some other code) is present in= the APUS version only! Although there are m68k comments in the changes, these changes are not present in the Linux/m68k tree. Anyone who knows why APUS changed ide-probe.c? Perhaps you can try with the original ide-probe.c from Marcelo's tree? 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 |