diff options
author | Horst Hummel <horst.hummel@de.ibm.com> | 2006-08-24 07:22:36 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2006-08-24 07:22:36 -0400 |
commit | 8e79a441a4d8a34d64efe93add49b3eefca5cd1c (patch) | |
tree | 85f163962161f8c26881533a5376602f8f800e9d /drivers/s390/block/dasd_devmap.c | |
parent | ef7d1b244fa6c94fb76d5f787b8629df64ea4046 (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.c | 8 |
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 | */ |
55 | struct dasd_server_ssid_map { | 55 | struct 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 | ||
64 | static struct list_head dasd_server_ssid_list; | 64 | static 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; |