Do not set vb->pr_dev_info.report unconditionally if
VIRTIO_BALLOON_F_REPORTING is not available.

Signed-off-by: Dongli Zhang <[email protected]>
---
 drivers/virtio/virtio_balloon.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c
index 74fe59f5a78c..0c39f2415324 100644
--- a/drivers/virtio/virtio_balloon.c
+++ b/drivers/virtio/virtio_balloon.c
@@ -1034,7 +1034,6 @@ static int virtballoon_probe(struct virtio_device *vdev)
                                 poison_val, &poison_val);
        }
 
-       vb->pr_dev_info.report = virtballoon_free_page_report;
        if (virtio_has_feature(vb->vdev, VIRTIO_BALLOON_F_REPORTING)) {
                unsigned int capacity;
 
@@ -1044,6 +1043,8 @@ static int virtballoon_probe(struct virtio_device *vdev)
                        goto out_unregister_oom;
                }
 
+               vb->pr_dev_info.report = virtballoon_free_page_report;
+
                /*
                 * The default page reporting order is @pageblock_order, which
                 * corresponds to 512MB in size on ARM64 when 64KB base page
-- 
2.39.3


Reply via email to