* [PATCH] scsi: fnic: print port speed only at driver init or speed change
@ 2019-08-23 14:08 John Pittman
2019-08-29 22:58 ` Martin K. Petersen
0 siblings, 1 reply; 2+ messages in thread
From: John Pittman @ 2019-08-23 14:08 UTC (permalink / raw)
To: martin.petersen; +Cc: jejb, satishkh, linux-scsi, John Pittman
Port speed printing was added by commit d948e6383ec3 ("scsi: fnic:
Add port speed stat to fnic debug stats"). As currently configured,
this will cause the port speed to be printed to syslog every
2 seconds. To prevent log spamming, only print the vnic port speed
at driver initialization and if the speed changes. Also clean up a
small typo in fnic_trace.c.
Fixes: commit d948e6383ec3 ("scsi: fnic: Add port speed stat to fnic debug stats")
Signed-off-by: John Pittman <jpittman@redhat.com>
---
drivers/scsi/fnic/fnic_fcs.c | 14 ++++++++++----
drivers/scsi/fnic/fnic_trace.c | 2 +-
2 files changed, 11 insertions(+), 5 deletions(-)
diff --git a/drivers/scsi/fnic/fnic_fcs.c b/drivers/scsi/fnic/fnic_fcs.c
index 911a5adc289c..673887e383cc 100644
--- a/drivers/scsi/fnic/fnic_fcs.c
+++ b/drivers/scsi/fnic/fnic_fcs.c
@@ -52,6 +52,7 @@ void fnic_handle_link(struct work_struct *work)
unsigned long flags;
int old_link_status;
u32 old_link_down_cnt;
+ u64 old_port_speed, new_port_speed;
spin_lock_irqsave(&fnic->fnic_lock, flags);
@@ -62,14 +63,19 @@ void fnic_handle_link(struct work_struct *work)
old_link_down_cnt = fnic->link_down_cnt;
old_link_status = fnic->link_status;
+ old_port_speed = atomic64_read(
+ &fnic->fnic_stats.misc_stats.current_port_speed);
+
fnic->link_status = vnic_dev_link_status(fnic->vdev);
fnic->link_down_cnt = vnic_dev_link_down_cnt(fnic->vdev);
+ new_port_speed = vnic_dev_port_speed(fnic->vdev);
atomic64_set(&fnic->fnic_stats.misc_stats.current_port_speed,
- vnic_dev_port_speed(fnic->vdev));
- shost_printk(KERN_INFO, fnic->lport->host, "Current vnic speed set to : %llu\n",
- (u64)atomic64_read(
- &fnic->fnic_stats.misc_stats.current_port_speed));
+ new_port_speed);
+ if (old_port_speed != new_port_speed)
+ shost_printk(KERN_INFO, fnic->lport->host,
+ "Current vnic speed set to : %llu\n",
+ new_port_speed);
switch (vnic_dev_port_speed(fnic->vdev)) {
case DCEM_PORTSPEED_10G:
diff --git a/drivers/scsi/fnic/fnic_trace.c b/drivers/scsi/fnic/fnic_trace.c
index 9621831e17ba..a0d01aea28f7 100644
--- a/drivers/scsi/fnic/fnic_trace.c
+++ b/drivers/scsi/fnic/fnic_trace.c
@@ -453,7 +453,7 @@ int fnic_get_stats_data(struct stats_debug_info *debug,
(u64)atomic64_read(&stats->misc_stats.frame_errors));
len += snprintf(debug->debug_buffer + len, buf_size - len,
- "Firmware reported port seed: %llu\n",
+ "Firmware reported port speed: %llu\n",
(u64)atomic64_read(
&stats->misc_stats.current_port_speed));
--
2.17.2
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [PATCH] scsi: fnic: print port speed only at driver init or speed change
2019-08-23 14:08 [PATCH] scsi: fnic: print port speed only at driver init or speed change John Pittman
@ 2019-08-29 22:58 ` Martin K. Petersen
0 siblings, 0 replies; 2+ messages in thread
From: Martin K. Petersen @ 2019-08-29 22:58 UTC (permalink / raw)
To: John Pittman; +Cc: martin.petersen, jejb, satishkh, linux-scsi
John,
> Port speed printing was added by commit d948e6383ec3 ("scsi: fnic:
> Add port speed stat to fnic debug stats"). As currently configured,
> this will cause the port speed to be printed to syslog every
> 2 seconds. To prevent log spamming, only print the vnic port speed
> at driver initialization and if the speed changes. Also clean up a
> small typo in fnic_trace.c.
Applied to 5.4/scsi-queue, thanks.
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-08-29 22:58 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-08-23 14:08 [PATCH] scsi: fnic: print port speed only at driver init or speed change John Pittman
2019-08-29 22:58 ` Martin K. Petersen
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.