Commit ca72cc34 authored by Alexander Duyck's avatar Alexander Duyck Committed by Michael S. Tsirkin

virtio-balloon: Document byte ordering of poison_val

The poison_val field in the virtio_balloon_config is treated as a
little-endian field by the host. Since we are currently only having to deal
with a single byte poison value this isn't a problem, however if the value
should ever expand it would cause byte ordering issues. Document that in
the code so that we know that if the value should ever expand we need to
byte swap the value on big-endian architectures.
Signed-off-by: default avatarAlexander Duyck <alexander.h.duyck@linux.intel.com>
Link: https://lore.kernel.org/r/20200713203539.17140.71425.stgit@localhost.localdomainSigned-off-by: default avatarMichael S. Tsirkin <mst@redhat.com>
Acked-by: default avatarDavid Hildenbrand <david@redhat.com>
parent 295c1b98
...@@ -974,6 +974,11 @@ static int virtballoon_probe(struct virtio_device *vdev) ...@@ -974,6 +974,11 @@ static int virtballoon_probe(struct virtio_device *vdev)
/* /*
* Let the hypervisor know that we are expecting a * Let the hypervisor know that we are expecting a
* specific value to be written back in balloon pages. * specific value to be written back in balloon pages.
*
* If the PAGE_POISON value was larger than a byte we would
* need to byte swap poison_val here to guarantee it is
* little-endian. However for now it is a single byte so we
* can pass it as-is.
*/ */
if (!want_init_on_free()) if (!want_init_on_free())
memset(&poison_val, PAGE_POISON, sizeof(poison_val)); memset(&poison_val, PAGE_POISON, sizeof(poison_val));
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment