diff options
Diffstat (limited to 'drivers/s390')
-rw-r--r-- | drivers/s390/block/dcssblk.c | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/drivers/s390/block/dcssblk.c b/drivers/s390/block/dcssblk.c index b550c8c8d010..7f900229404d 100644 --- a/drivers/s390/block/dcssblk.c +++ b/drivers/s390/block/dcssblk.c | |||
@@ -438,7 +438,13 @@ dcssblk_save_store(struct device *dev, struct device_attribute *attr, const char | |||
438 | pr_info("All DCSSs that map to device %s are " | 438 | pr_info("All DCSSs that map to device %s are " |
439 | "saved\n", dev_info->segment_name); | 439 | "saved\n", dev_info->segment_name); |
440 | list_for_each_entry(entry, &dev_info->seg_list, lh) { | 440 | list_for_each_entry(entry, &dev_info->seg_list, lh) { |
441 | segment_save(entry->segment_name); | 441 | if (entry->segment_type == SEG_TYPE_EN || |
442 | entry->segment_type == SEG_TYPE_SN) | ||
443 | pr_warn("DCSS %s is of type SN or EN" | ||
444 | " and cannot be saved\n", | ||
445 | entry->segment_name); | ||
446 | else | ||
447 | segment_save(entry->segment_name); | ||
442 | } | 448 | } |
443 | } else { | 449 | } else { |
444 | // device is busy => we save it when it becomes | 450 | // device is busy => we save it when it becomes |
@@ -797,7 +803,12 @@ dcssblk_release(struct gendisk *disk, fmode_t mode) | |||
797 | pr_info("Device %s has become idle and is being saved " | 803 | pr_info("Device %s has become idle and is being saved " |
798 | "now\n", dev_info->segment_name); | 804 | "now\n", dev_info->segment_name); |
799 | list_for_each_entry(entry, &dev_info->seg_list, lh) { | 805 | list_for_each_entry(entry, &dev_info->seg_list, lh) { |
800 | segment_save(entry->segment_name); | 806 | if (entry->segment_type == SEG_TYPE_EN || |
807 | entry->segment_type == SEG_TYPE_SN) | ||
808 | pr_warn("DCSS %s is of type SN or EN and cannot" | ||
809 | " be saved\n", entry->segment_name); | ||
810 | else | ||
811 | segment_save(entry->segment_name); | ||
801 | } | 812 | } |
802 | dev_info->save_pending = 0; | 813 | dev_info->save_pending = 0; |
803 | } | 814 | } |