El vie, 28-10-2005 a las 20:35 +0200, Alfred M. Szmidt escribió:
>    How did you compile it (configure options and gcc version) and from
>    where did you get the sources (ams-branch?) ? I would like to take
>    a look at this problem.
> 
> It is from gnumach-1-branch (no such thing as ams-branch for GNU
> Mach), it might have some hacks from me.  I don't recall, you can get
> the same try using tla from:
> [EMAIL PROTECTED]/gnumach--ams--1.3
> (http://www.update.uu.se/~ams/{archives}/2005-update).
> 

The problem seems to be a little bug (MAXIRQ value is 16, while reg_IRQ
array range is 0-15) in eata_dma and eata_pio scsi drivers triggered by
using gcc-4.0. Please try the attached patch, it works for me.

And for the boot process, I've only took a little look, but fsck claims
"filesystem arguments not allowed with --all", dmd and deco doesn't run
because they can't find guile, and login must be installed with setuid.
I'm too sleepy now to look forward, maybe tomorrow.

> By the way, I'm still waiting for papers from you, I'd really like to
> commit the patches that you sent to ams-branch, and maybe
> gnumach-1-branch.
> 

Sorry, I forgot to tell you that I already have that papers (for glibc,
gnumach and hurd).

-- 
Sergio Lopez
[EMAIL PROTECTED]
diff -dur gnumach-ams.orig/linux/dev/drivers/scsi/eata_dma.c gnumach-ams/linux/dev/drivers/scsi/eata_dma.c
--- gnumach-ams.orig/linux/dev/drivers/scsi/eata_dma.c	2005-10-29 04:23:28.000000000 +0200
+++ gnumach-ams/linux/dev/drivers/scsi/eata_dma.c	2005-10-29 04:25:52.000000000 +0200
@@ -1536,7 +1536,7 @@
     
     find_ISA(&gc, tpnt);
     
-    for (i = 0; i <= MAXIRQ; i++) { /* Now that we know what we have, we     */
+    for (i = 0; i < MAXIRQ; i++) {  /* Now that we know what we have, we     */
 	if (reg_IRQ[i] >= 1){       /* exchange the interrupt handler which  */
 	    free_irq(i, NULL);      /* we used for probing with the real one */
 	    request_irq(i, (void *)(eata_int_handler), SA_INTERRUPT|SA_SHIRQ, 
diff -dur gnumach-ams.orig/linux/src/drivers/scsi/eata_dma.c gnumach-ams/linux/src/drivers/scsi/eata_dma.c
--- gnumach-ams.orig/linux/src/drivers/scsi/eata_dma.c	2005-10-29 04:23:28.000000000 +0200
+++ gnumach-ams/linux/src/drivers/scsi/eata_dma.c	2005-10-29 04:25:57.000000000 +0200
@@ -1532,7 +1532,7 @@
     
     find_ISA(&gc, tpnt);
     
-    for (i = 0; i <= MAXIRQ; i++) { /* Now that we know what we have, we     */
+    for (i = 0; i < MAXIRQ; i++) {  /* Now that we know what we have, we     */
 	if (reg_IRQ[i] >= 1){       /* exchange the interrupt handler which  */
 	    free_irq(i, NULL);      /* we used for probing with the real one */
 	    request_irq(i, (void *)(eata_int_handler), SA_INTERRUPT|SA_SHIRQ, 
diff -dur gnumach-ams.orig/linux/src/drivers/scsi/eata_pio.c gnumach-ams/linux/src/drivers/scsi/eata_pio.c
--- gnumach-ams.orig/linux/src/drivers/scsi/eata_pio.c	2005-10-29 04:23:28.000000000 +0200
+++ gnumach-ams/linux/src/drivers/scsi/eata_pio.c	2005-10-29 04:24:06.000000000 +0200
@@ -981,7 +981,7 @@
 
     find_pio_ISA(&gc, tpnt);
     
-    for (i = 0; i <= MAXIRQ; i++)
+    for (i = 0; i < MAXIRQ; i++)
 	if (reg_IRQ[i])
 	    request_irq(i, eata_pio_int_handler, SA_INTERRUPT, "EATA-PIO", NULL);
     
_______________________________________________
gnu-system-discuss mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/gnu-system-discuss

Reply via email to