summaryrefslogtreecommitdiffstats
path: root/drivers/s390/scsi/zfcp_diag.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/s390/scsi/zfcp_diag.c')
-rw-r--r--drivers/s390/scsi/zfcp_diag.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/drivers/s390/scsi/zfcp_diag.c b/drivers/s390/scsi/zfcp_diag.c
index fa1b25f3ec3c..d7d2db85b32e 100644
--- a/drivers/s390/scsi/zfcp_diag.c
+++ b/drivers/s390/scsi/zfcp_diag.c
@@ -34,6 +34,9 @@
*/
int zfcp_diag_adapter_setup(struct zfcp_adapter *const adapter)
{
+ /* set the timestamp so that the first test on age will always fail */
+ const unsigned long initial_timestamp =
+ jiffies - msecs_to_jiffies(ZFCP_DIAG_MAX_AGE);
struct zfcp_diag_adapter *diag;
struct zfcp_diag_header *hdr;
@@ -47,8 +50,15 @@ int zfcp_diag_adapter_setup(struct zfcp_adapter *const adapter)
spin_lock_init(&hdr->access_lock);
hdr->buffer = &diag->port_data.data;
hdr->buffer_size = sizeof(diag->port_data.data);
- /* set the timestamp so that the first test on age will always fail */
- hdr->timestamp = jiffies - msecs_to_jiffies(ZFCP_DIAG_MAX_AGE);
+ hdr->timestamp = initial_timestamp;
+
+ /* setup header for config_data */
+ hdr = &diag->config_data.header;
+
+ spin_lock_init(&hdr->access_lock);
+ hdr->buffer = &diag->config_data.data;
+ hdr->buffer_size = sizeof(diag->config_data.data);
+ hdr->timestamp = initial_timestamp;
adapter->diagnostics = diag;
return 0;