diff -Nru a/drivers/scsi/imm.c b/drivers/scsi/imm.c --- a/drivers/scsi/imm.c 2003-05-27 12:09:47.000000000 -0400 +++ b/drivers/scsi/imm.c 2003-05-27 12:05:29.000000000 -0400 @@ -254,7 +254,7 @@ } int imm_proc_info(struct Scsi_Host *host, char *buffer, char **start, off_t offset, - int length, int hostno, int inout) + int length, int inout) { int i; int len = 0; diff -Nru a/drivers/scsi/imm.h b/drivers/scsi/imm.h --- a/drivers/scsi/imm.h 2003-05-27 12:09:47.000000000 -0400 +++ b/drivers/scsi/imm.h 2003-05-27 12:05:11.000000000 -0400 @@ -159,6 +159,7 @@ int imm_queuecommand(Scsi_Cmnd *, void (*done) (Scsi_Cmnd *)); int imm_abort(Scsi_Cmnd *); int imm_reset(Scsi_Cmnd *); +int imm_proc_info(struct Scsi_Host *, char *, char **, off_t, int, int); int imm_biosparam(struct scsi_device *, struct block_device *, sector_t, int *); diff -Nru a/drivers/scsi/ppa.c b/drivers/scsi/ppa.c --- a/drivers/scsi/ppa.c 2003-05-27 12:09:47.000000000 -0400 +++ b/drivers/scsi/ppa.c 2003-05-27 11:56:01.000000000 -0400 @@ -277,7 +277,7 @@ int len = 0; for (i = 0; i < 4; i++) - if (ppa_hosts[i] == host) + if (ppa_hosts[i].host == host->host_no) break; if (inout)