On Mon, 10 Jan 2005, Noah Misch wrote:

On Sun, 9 Jan 2005, Riccardo Mottola wrote:
LD      .tmp_vmlinux1
drivers/built-in.o: In function `macscsi_release':
drivers/built-in.o(.text+0x37424): undefined reference to `local symbols
in discarded section .exit.text'

NCR5380_exit became __devexit in August, and macscsi_release calls it. Does this patch (which also brings __devinit in line with NCR5380) work for you?

Well, it fixed the build failure, but when I tested the kernel I get a new error at bootup,


scsi HBA driver Macintosh NCR5380 SCSI didn't set a release method.

I think the last chunk of the patch is causing this, since this error means that the release pointer is null. Looking at mac_esp.c, I'm guessing we should drop the last chunk and change the second chunk to

-int macscsi_release (struct Scsi_Host *shpnt)
+static int macscsi_release (struct Scsi_Host *shpnt)

What do you think?

-f


Signed-off-by: Noah Misch <[EMAIL PROTECTED]>

--- a/drivers/scsi/mac_scsi.c~  2004-10-18 17:53:11.000000000 -0400
+++ b/drivers/scsi/mac_scsi.c   2005-01-10 15:25:37.991145883 -0500
@@ -233,7 +233,7 @@
 *
 */

-int macscsi_detect(Scsi_Host_Template * tpnt)
+int __devinit macscsi_detect(Scsi_Host_Template * tpnt)
{
    static int called = 0;
    int flags = 0;
@@ -322,7 +322,7 @@
    return 1;
}

-int macscsi_release (struct Scsi_Host *shpnt)
+int __devexit macscsi_release (struct Scsi_Host *shpnt)
{
        if (shpnt->irq != SCSI_IRQ_NONE)
                free_irq (shpnt->irq, NCR5380_intr);
@@ -336,7 +336,7 @@
 * Our 'bus reset on boot' function
 */

-static void mac_scsi_reset_boot(struct Scsi_Host *instance)
+static void __devinit mac_scsi_reset_boot(struct Scsi_Host *instance)
{
        unsigned long end;

@@ -586,7 +586,7 @@
        .proc_info                      = macscsi_proc_info,
        .name                           = "Macintosh NCR5380 SCSI",
        .detect                         = macscsi_detect,
-       .release                        = macscsi_release,
+       .release                        = __devexit_p(macscsi_release),
        .info                           = macscsi_info,
        .queuecommand                   = macscsi_queue_command,
        .eh_abort_handler               = macscsi_abort,

-
To unsubscribe from this list: send the line "unsubscribe linux-m68k" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to