aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/s390/block/dasd_devmap.c
diff options
context:
space:
mode:
authorHorst Hummel <horst.hummel@de.ibm.com>2006-08-24 07:22:36 -0400
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2006-08-24 07:22:36 -0400
commit8e79a441a4d8a34d64efe93add49b3eefca5cd1c (patch)
tree85f163962161f8c26881533a5376602f8f800e9d /drivers/s390/block/dasd_devmap.c
parentef7d1b244fa6c94fb76d5f787b8629df64ea4046 (diff)
[S390] dasd PAV enabling.
The subsystem check in the PAV code is incorrect, it enables PAV per device instead of per subsystem. Signed-off-by: Horst Hummel <horst.hummel@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'drivers/s390/block/dasd_devmap.c')
-rw-r--r--drivers/s390/block/dasd_devmap.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/s390/block/dasd_devmap.c b/drivers/s390/block/dasd_devmap.c
index 9d0c6e1a0e6..9af02c79ce8 100644
--- a/drivers/s390/block/dasd_devmap.c
+++ b/drivers/s390/block/dasd_devmap.c
@@ -54,11 +54,11 @@ struct dasd_devmap {
54 */ 54 */
55struct dasd_server_ssid_map { 55struct dasd_server_ssid_map {
56 struct list_head list; 56 struct list_head list;
57 struct server_id { 57 struct system_id {
58 char vendor[4]; 58 char vendor[4];
59 char serial[15]; 59 char serial[15];
60 __u16 ssid;
60 } sid; 61 } sid;
61 __u16 ssid;
62}; 62};
63 63
64static struct list_head dasd_server_ssid_list; 64static struct list_head dasd_server_ssid_list;
@@ -904,14 +904,14 @@ dasd_set_uid(struct ccw_device *cdev, struct dasd_uid *uid)
904 return -ENOMEM; 904 return -ENOMEM;
905 strncpy(srv->sid.vendor, uid->vendor, sizeof(srv->sid.vendor) - 1); 905 strncpy(srv->sid.vendor, uid->vendor, sizeof(srv->sid.vendor) - 1);
906 strncpy(srv->sid.serial, uid->serial, sizeof(srv->sid.serial) - 1); 906 strncpy(srv->sid.serial, uid->serial, sizeof(srv->sid.serial) - 1);
907 srv->ssid = uid->ssid; 907 srv->sid.ssid = uid->ssid;
908 908
909 /* server is already contained ? */ 909 /* server is already contained ? */
910 spin_lock(&dasd_devmap_lock); 910 spin_lock(&dasd_devmap_lock);
911 devmap->uid = *uid; 911 devmap->uid = *uid;
912 list_for_each_entry(tmp, &dasd_server_ssid_list, list) { 912 list_for_each_entry(tmp, &dasd_server_ssid_list, list) {
913 if (!memcmp(&srv->sid, &tmp->sid, 913 if (!memcmp(&srv->sid, &tmp->sid,
914 sizeof(struct dasd_server_ssid_map))) { 914 sizeof(struct system_id))) {
915 kfree(srv); 915 kfree(srv);
916 srv = NULL; 916 srv = NULL;
917 break; 917 break;