Hi Finn, On Thu, May 19, 2016 at 2:02 PM, Finn Thain <fth...@telegraphics.com.au> wrote: > On Thu, 19 May 2016, Geert Uytterhoeven wrote: >> In file included from drivers/scsi/mac_scsi.c:335: >> drivers/scsi/NCR5380.h:295: warning: `NCR5380_poll_politely' declared inline >> after being called >> drivers/scsi/NCR5380.h:295: warning: previous declaration of >> `NCR5380_poll_politely' was here > > Thanks for letting me know. My compiler (v4.4.6) doesn't warn about this. > What GCC version are you using? Does this (untested) patch help?
The venerable gcc version 4.1.2 20061115 (prerelease) (Ubuntu 4.1.1-21). Which seems to disobey __attribute__((unused)): drivers/scsi/NCR5380.c:385: warning: ‘NCR5380_probe_irq’ defined but not used > Index: linux/drivers/scsi/NCR5380.c > =================================================================== > --- linux.orig/drivers/scsi/NCR5380.c 2016-05-19 21:31:05.000000000 +1000 > +++ linux/drivers/scsi/NCR5380.c 2016-05-19 21:39:08.000000000 +1000 > @@ -230,13 +230,6 @@ static int NCR5380_poll_politely2(struct > return -ETIMEDOUT; > } > > -static inline int NCR5380_poll_politely(struct Scsi_Host *instance, > - int reg, int bit, int val, int wait) > -{ > - return NCR5380_poll_politely2(instance, reg, bit, val, > - reg, bit, val, wait); > -} > - > #if NDEBUG > static struct { > unsigned char mask; > Index: linux/drivers/scsi/NCR5380.h > =================================================================== > --- linux.orig/drivers/scsi/NCR5380.h 2016-05-19 19:47:06.000000000 +1000 > +++ linux/drivers/scsi/NCR5380.h 2016-05-19 21:40:15.000000000 +1000 > @@ -292,8 +292,10 @@ static void NCR5380_reselect(struct Scsi > static struct scsi_cmnd *NCR5380_select(struct Scsi_Host *, struct scsi_cmnd > *); > static int NCR5380_transfer_dma(struct Scsi_Host *instance, unsigned char > *phase, int *count, unsigned char **data); > static int NCR5380_transfer_pio(struct Scsi_Host *instance, unsigned char > *phase, int *count, unsigned char **data); > -static int NCR5380_poll_politely(struct Scsi_Host *, int, int, int, int); > static int NCR5380_poll_politely2(struct Scsi_Host *, int, int, int, int, > int, int, int); > > +#define NCR5380_poll_politely(instance, reg, bit, val, wait) \ > + NCR5380_poll_politely2(instance, reg, bit, val, reg, bit, val, wait) Thanks, that silences the warning. BTW, what about using the static inline variant here? That works, too. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- ge...@linux-m68k.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 -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html