Code Review
/
kvmfornfv.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Upgrade to 4.4.50-rt62
[kvmfornfv.git]
/
kernel
/
drivers
/
s390
/
cio
/
chp.c
diff --git
a/kernel/drivers/s390/cio/chp.c
b/kernel/drivers/s390/cio/chp.c
index
c692dfe
..
50597f9
100644
(file)
--- a/
kernel/drivers/s390/cio/chp.c
+++ b/
kernel/drivers/s390/cio/chp.c
@@
-139,11
+139,11
@@
static ssize_t chp_measurement_chars_read(struct file *filp,
device = container_of(kobj, struct device, kobj);
chp = to_channelpath(device);
device = container_of(kobj, struct device, kobj);
chp = to_channelpath(device);
- if (
!chp->cmg_chars
)
+ if (
chp->cmg == -1
)
return 0;
return 0;
- return memory_read_from_buffer(buf, count, &off,
-
chp->cmg_chars, sizeof(struct
cmg_chars));
+ return memory_read_from_buffer(buf, count, &off,
&chp->cmg_chars,
+
sizeof(chp->
cmg_chars));
}
static struct bin_attribute chp_measurement_chars_attr = {
}
static struct bin_attribute chp_measurement_chars_attr = {
@@
-416,7
+416,8
@@
static void chp_release(struct device *dev)
* chp_update_desc - update channel-path description
* @chp - channel-path
*
* chp_update_desc - update channel-path description
* @chp - channel-path
*
- * Update the channel-path description of the specified channel-path.
+ * Update the channel-path description of the specified channel-path
+ * including channel measurement related information.
* Return zero on success, non-zero otherwise.
*/
int chp_update_desc(struct channel_path *chp)
* Return zero on success, non-zero otherwise.
*/
int chp_update_desc(struct channel_path *chp)
@@
-428,8
+429,10
@@
int chp_update_desc(struct channel_path *chp)
return rc;
rc = chsc_determine_fmt1_channel_path_desc(chp->chpid, &chp->desc_fmt1);
return rc;
rc = chsc_determine_fmt1_channel_path_desc(chp->chpid, &chp->desc_fmt1);
+ if (rc)
+ return rc;
- return
rc
;
+ return
chsc_get_channel_measurement_chars(chp)
;
}
/**
}
/**
@@
-466,14
+469,6
@@
int chp_new(struct chp_id chpid)
ret = -ENODEV;
goto out_free;
}
ret = -ENODEV;
goto out_free;
}
- /* Get channel-measurement characteristics. */
- if (css_chsc_characteristics.scmc && css_chsc_characteristics.secm) {
- ret = chsc_get_channel_measurement_chars(chp);
- if (ret)
- goto out_free;
- } else {
- chp->cmg = -1;
- }
dev_set_name(&chp->dev, "chp%x.%02x", chpid.cssid, chpid.id);
/* make it known to the system */
dev_set_name(&chp->dev, "chp%x.%02x", chpid.cssid, chpid.id);
/* make it known to the system */