On Mon, Oct 12, 2020 at 02:52:56PM +0200, David Hildenbrand wrote:
>We actually need one byte less (next_mb_id is exclusive, first_mb_id is
>inclusive). Simplify.
>
>Cc: "Michael S. Tsirkin" <m...@redhat.com>
>Cc: Jason Wang <jasow...@redhat.com>
>Cc: Pankaj Gupta <pankaj.gupta.li...@gmail.com>
>Signed-off-by: David Hildenbrand <da...@redhat.com>
>---
> drivers/virtio/virtio_mem.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
>diff --git a/drivers/virtio/virtio_mem.c b/drivers/virtio/virtio_mem.c
>index a1f5bf7a571a..670b3faf412d 100644
>--- a/drivers/virtio/virtio_mem.c
>+++ b/drivers/virtio/virtio_mem.c
>@@ -257,8 +257,8 @@ static enum virtio_mem_mb_state 
>virtio_mem_mb_get_state(struct virtio_mem *vm,
>  */
> static int virtio_mem_mb_state_prepare_next_mb(struct virtio_mem *vm)
> {
>-      unsigned long old_bytes = vm->next_mb_id - vm->first_mb_id + 1;
>-      unsigned long new_bytes = vm->next_mb_id - vm->first_mb_id + 2;
>+      unsigned long old_bytes = vm->next_mb_id - vm->first_mb_id;
>+      unsigned long new_bytes = old_bytes + 1;

This is correct.

So this looks more like a fix?

>       int old_pages = PFN_UP(old_bytes);
>       int new_pages = PFN_UP(new_bytes);
>       uint8_t *new_mb_state;
>-- 
>2.26.2

-- 
Wei Yang
Help you, Help me

Reply via email to