diff --git a/sys/amd64/include/vmm_snapshot.h b/sys/amd64/include/vmm_snapshot.h --- a/sys/amd64/include/vmm_snapshot.h +++ b/sys/amd64/include/vmm_snapshot.h @@ -101,13 +101,13 @@ }; void vm_snapshot_buf_err(const char *bufname, const enum vm_snapshot_op op); -int vm_snapshot_buf(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta); +int vm_snapshot_buf(void *data, size_t data_size, + struct vm_snapshot_meta *meta); size_t vm_get_snapshot_size(struct vm_snapshot_meta *meta); int vm_snapshot_guest2host_addr(void **addrp, size_t len, bool restore_null, - struct vm_snapshot_meta *meta); -int vm_snapshot_buf_cmp(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta); + struct vm_snapshot_meta *meta); +int vm_snapshot_buf_cmp(void *data, size_t data_size, + struct vm_snapshot_meta *meta); #define SNAPSHOT_BUF_OR_LEAVE(DATA, LEN, META, RES, LABEL) \ do { \ diff --git a/sys/amd64/vmm/vmm_snapshot.c b/sys/amd64/vmm/vmm_snapshot.c --- a/sys/amd64/vmm/vmm_snapshot.c +++ b/sys/amd64/vmm/vmm_snapshot.c @@ -57,14 +57,11 @@ } int -vm_snapshot_buf(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta) +vm_snapshot_buf(void *data, size_t data_size, struct vm_snapshot_meta *meta) { struct vm_snapshot_buffer *buffer; int op; - void *nv_data; - nv_data = __DEVOLATILE(void *, data); buffer = &meta->buffer; op = meta->op; @@ -74,9 +71,9 @@ } if (op == VM_SNAPSHOT_SAVE) - copyout(nv_data, buffer->buf, data_size); + copyout(data, buffer->buf, data_size); else if (op == VM_SNAPSHOT_RESTORE) - copyin(buffer->buf, nv_data, data_size); + copyin(buffer->buf, data, data_size); else return (EINVAL); @@ -106,13 +103,11 @@ } int -vm_snapshot_buf_cmp(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta) +vm_snapshot_buf_cmp(void *data, size_t data_size, struct vm_snapshot_meta *meta) { struct vm_snapshot_buffer *buffer; int op; int ret; - void *_data = *(void **)(void *)&data; buffer = &meta->buffer; op = meta->op; @@ -125,9 +120,9 @@ if (op == VM_SNAPSHOT_SAVE) { ret = 0; - copyout(_data, buffer->buf, data_size); + copyout(data, buffer->buf, data_size); } else if (op == VM_SNAPSHOT_RESTORE) { - ret = memcmp(_data, buffer->buf, data_size); + ret = memcmp(data, buffer->buf, data_size); } else { ret = EINVAL; goto done; diff --git a/usr.sbin/bhyve/snapshot.c b/usr.sbin/bhyve/snapshot.c --- a/usr.sbin/bhyve/snapshot.c +++ b/usr.sbin/bhyve/snapshot.c @@ -1584,8 +1584,7 @@ } int -vm_snapshot_buf(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta) +vm_snapshot_buf(void *data, size_t data_size, struct vm_snapshot_meta *meta) { struct vm_snapshot_buffer *buffer; int op; @@ -1599,9 +1598,9 @@ } if (op == VM_SNAPSHOT_SAVE) - memcpy(buffer->buf, (uint8_t *) data, data_size); + memcpy(buffer->buf, data, data_size); else if (op == VM_SNAPSHOT_RESTORE) - memcpy((uint8_t *) data, buffer->buf, data_size); + memcpy(data, buffer->buf, data_size); else return (EINVAL); @@ -1667,8 +1666,7 @@ } int -vm_snapshot_buf_cmp(volatile void *data, size_t data_size, - struct vm_snapshot_meta *meta) +vm_snapshot_buf_cmp(void *data, size_t data_size, struct vm_snapshot_meta *meta) { struct vm_snapshot_buffer *buffer; int op; @@ -1685,9 +1683,9 @@ if (op == VM_SNAPSHOT_SAVE) { ret = 0; - memcpy(buffer->buf, (uint8_t *) data, data_size); + memcpy(buffer->buf, data, data_size); } else if (op == VM_SNAPSHOT_RESTORE) { - ret = memcmp((uint8_t *) data, buffer->buf, data_size); + ret = memcmp(data, buffer->buf, data_size); } else { ret = EINVAL; goto done;