On Fri, 05 Aug 2005 13:10:51 PDT, Andrew Morton wrote: >Doug Maxey <dwm@xxxxxxxxxxxxx> wrote: >> >> >> On Fri, 05 Aug 2005 13:10:56 EDT, Jeff Garzik wrote: >> >Olaf Hering wrote: >> >> ata_host_intr cant be either inline or exported. >> >> >> >> Signed-off-by: Olaf Hering <olh@xxxxxxx> >> >> >> >> Index: linux-2.6.12/drivers/scsi/libata-core.c >> >> =================================================================== >> >> --- linux-2.6.12.orig/drivers/scsi/libata-core.c >> >> +++ linux-2.6.12/drivers/scsi/libata-core.c >> >> @@ -3487,7 +3487,7 @@ void ata_bmdma_stop(struct ata_port *ap) >> >> * One if interrupt was handled, zero if not (shared irq). >> >> */ >> >> >> >> -inline unsigned int ata_host_intr (struct ata_port *ap, >> >> +unsigned int ata_host_intr (struct ata_port *ap, >> > >> >er, huh? >> > >> >When I wrote this, the compiler did what I expected: it inlined the >> >local copy, and exported a copy for external modules to call. >> > >> >Have you verified the asm does not do this? What changed? >> > >> > Jeff >> >> breaks on ppc64. >> > >I don't see why it should break. What the code's trying to do there is >bloaty-but-legitimate. > >The function is decared `extern unsigned int ata_host_intr(...)' in .h and >`inline unsigned int ata_host_intr(...)' in .c. Should all work. > >Can you share the error messages? > Um, er, no. This was a ways back. Using 3.3.x would not complain, but 3.4.x did. Not this specific instance, but with another driver that had a similar construct. IIRC, the header had a defined "extern inline" and there was a definition in the .c file without inline. It should be an error, IMHO. ++doug - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html