Re: [PATCH v4 22/23] mac_scsi: Fix pseudo DMA implementation

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Finn,

On Thu, May 19, 2016 at 2:02 PM, Finn Thain <fthain@xxxxxxxxxxxxxxxxxxx> 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 -- geert@xxxxxxxxxxxxxx

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-m68k" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Video for Linux]     [Yosemite News]     [Linux S/390]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux