Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 121372
b: refs/heads/master
c: bd43a42
h: refs/heads/master
v: v3
  • Loading branch information
Christof Schmitt authored and Martin Schwidefsky committed Dec 25, 2008
1 parent a1a88e8 commit cade46b
Show file tree
Hide file tree
Showing 4 changed files with 21 additions and 3 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 6bcac508fbebdca52f5a55d69a4316997ecb5391
refs/heads/master: bd43a42b7e9880f426ed715f18bb4f963b7352af
13 changes: 13 additions & 0 deletions trunk/drivers/s390/scsi/zfcp_aux.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
*/

#include <linux/miscdevice.h>
#include <linux/seq_file.h>
#include "zfcp_ext.h"

static char *device;
Expand Down Expand Up @@ -436,6 +437,16 @@ static void _zfcp_status_read_scheduler(struct work_struct *work)
stat_work));
}

static void zfcp_print_sl(struct seq_file *m, struct service_level *sl)
{
struct zfcp_adapter *adapter =
container_of(sl, struct zfcp_adapter, service_level);

seq_printf(m, "zfcp: %s microcode level %x\n",
dev_name(&adapter->ccw_device->dev),
adapter->fsf_lic_version);
}

/**
* zfcp_adapter_enqueue - enqueue a new adapter to the list
* @ccw_device: pointer to the struct cc_device
Expand Down Expand Up @@ -500,6 +511,8 @@ int zfcp_adapter_enqueue(struct ccw_device *ccw_device)
INIT_WORK(&adapter->stat_work, _zfcp_status_read_scheduler);
INIT_WORK(&adapter->scan_work, _zfcp_scan_ports_later);

adapter->service_level.seq_print = zfcp_print_sl;

/* mark adapter unusable as long as sysfs registration is not complete */
atomic_set_mask(ZFCP_STATUS_COMMON_REMOVE, &adapter->status);

Expand Down
2 changes: 2 additions & 0 deletions trunk/drivers/s390/scsi/zfcp_def.h
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include <asm/qdio.h>
#include <asm/debug.h>
#include <asm/ebcdic.h>
#include <asm/sysinfo.h>
#include "zfcp_dbf.h"
#include "zfcp_fsf.h"

Expand Down Expand Up @@ -515,6 +516,7 @@ struct zfcp_adapter {
struct fsf_qtcb_bottom_port *stats_reset_data;
unsigned long stats_reset;
struct work_struct scan_work;
struct service_level service_level;
atomic_t qdio_outb_full; /* queue full incidents */
};

Expand Down
7 changes: 5 additions & 2 deletions trunk/drivers/s390/scsi/zfcp_erp.c
Original file line number Diff line number Diff line change
Expand Up @@ -1281,10 +1281,13 @@ static void zfcp_erp_action_cleanup(struct zfcp_erp_action *act, int result)
break;

case ZFCP_ERP_ACTION_REOPEN_ADAPTER:
if (result != ZFCP_ERP_SUCCEEDED)
if (result != ZFCP_ERP_SUCCEEDED) {
unregister_service_level(&adapter->service_level);
zfcp_erp_rports_del(adapter);
else
} else {
register_service_level(&adapter->service_level);
schedule_work(&adapter->scan_work);
}
zfcp_adapter_put(adapter);
break;
}
Expand Down

0 comments on commit cade46b

Please sign in to comment.