]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commitdiff
scsi: snic: fix printing time intervals
authorArnd Bergmann <arnd@arndb.de>
Wed, 11 Jul 2018 12:37:37 +0000 (14:37 +0200)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 13 Jul 2018 03:01:16 +0000 (23:01 -0400)
We don't want to use 'struct timespec' because of the y2038 overflow
problem. The overflow is not actually an issue here, but it's easy to
replace with 'timespec64' for consistency. However, it's worth pointing out
that nanosecond values have nine digits, not eight or ten, so I'm fixing
the format strings accordingly as well.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/snic/snic_debugfs.c
drivers/scsi/snic/snic_trc.c

index 269ddf791a73ff67723446498f5ff148054dc27b..0abe17c1a73be4645afba0e970b71bf0563fe37f 100644 (file)
@@ -200,7 +200,7 @@ snic_stats_show(struct seq_file *sfp, void *data)
 {
        struct snic *snic = (struct snic *) sfp->private;
        struct snic_stats *stats = &snic->s_stats;
-       struct timespec last_isr_tms, last_ack_tms;
+       struct timespec64 last_isr_tms, last_ack_tms;
        u64 maxio_tm;
        int i;
 
@@ -312,12 +312,12 @@ snic_stats_show(struct seq_file *sfp, void *data)
                   "\t\t Other Statistics\n"
                   "\n---------------------------------------------\n");
 
-       jiffies_to_timespec(stats->misc.last_isr_time, &last_isr_tms);
-       jiffies_to_timespec(stats->misc.last_ack_time, &last_ack_tms);
+       jiffies_to_timespec64(stats->misc.last_isr_time, &last_isr_tms);
+       jiffies_to_timespec64(stats->misc.last_ack_time, &last_ack_tms);
 
        seq_printf(sfp,
-                  "Last ISR Time               : %llu (%8lu.%8lu)\n"
-                  "Last Ack Time               : %llu (%8lu.%8lu)\n"
+                  "Last ISR Time               : %llu (%8llu.%09lu)\n"
+                  "Last Ack Time               : %llu (%8llu.%09lu)\n"
                   "Ack ISRs                    : %llu\n"
                   "IO Cmpl ISRs                : %llu\n"
                   "Err Notify ISRs             : %llu\n"
index f00ebf4717e08639c6b40ef4177f9bf7eec0a242..fc60c933d6c0b6340c2a9a564ab237078d42dc7d 100644 (file)
@@ -65,12 +65,12 @@ static int
 snic_fmt_trc_data(struct snic_trc_data *td, char *buf, int buf_sz)
 {
        int len = 0;
-       struct timespec tmspec;
+       struct timespec64 tmspec;
 
-       jiffies_to_timespec(td->ts, &tmspec);
+       jiffies_to_timespec64(td->ts, &tmspec);
 
        len += snprintf(buf, buf_sz,
-                       "%lu.%10lu %-25s %3d %4x %16llx %16llx %16llx %16llx %16llx\n",
+                       "%llu.%09lu %-25s %3d %4x %16llx %16llx %16llx %16llx %16llx\n",
                        tmspec.tv_sec,
                        tmspec.tv_nsec,
                        td->fn,