aboutsummaryrefslogtreecommitdiff
path: root/lib/cpu-notifier-error-inject.c
diff options
context:
space:
mode:
authorCornelia Huck <[email protected]>2015-06-29 16:44:01 +0200
committerPaolo Bonzini <[email protected]>2015-07-03 18:55:18 +0200
commit431dae778aea4eed31bd12e5ee82edc571cd4d70 (patch)
treead254fb0e1540501d690508b2ddf0eaea38815b8 /lib/cpu-notifier-error-inject.c
parent59fd132340b3e37b83179d2fcb673980035edf62 (diff)
KVM: s390: virtio-ccw: don't overwrite config space values
Eric noticed problems with vhost-scsi and virtio-ccw: vhost-scsi complained about overwriting values in the config space, which was triggered by a broken implementation of virtio-ccw's config get/set routines. It was probably sheer luck that we did not hit this before. When writing a value to the config space, the WRITE_CONF ccw will always write from the beginning of the config space up to and including the value to be set. If the config space up to the value has not yet been retrieved from the device, however, we'll end up overwriting values. Keep track of the known config space and update if needed to avoid this. Moreover, READ_CONF will only read the number of bytes it has been instructed to retrieve, so we must not copy more than that to the buffer, or we might overwrite trailing values. Reported-by: Eric Farman <[email protected]> Signed-off-by: Cornelia Huck <[email protected]> Reviewed-by: Eric Farman <[email protected]> Tested-by: Eric Farman <[email protected]> Signed-off-by: Christian Borntraeger <[email protected]> Cc: [email protected] Signed-off-by: Paolo Bonzini <[email protected]>
Diffstat (limited to 'lib/cpu-notifier-error-inject.c')
0 files changed, 0 insertions, 0 deletions