Thread (1 message) 1 message, 1 author, 2009-12-01

Re: virtio: Add memory statistics reporting to the balloon driver (V4)

From: Rusty Russell <hidden>
Date: 2009-12-01 02:24:22
Subsystem: the rest, virtio balloon, virtio core · Maintainers: Linus Torvalds, "Michael S. Tsirkin", David Hildenbrand, Jason Wang

Possibly related (same subject, not in this thread)

On Tue, 1 Dec 2009 02:44:15 am Adam Litke wrote:
Changes since V3:
OK, I applied this.  And here's the fixes I applied afterwards (to save YA
round trip: please ack and I'll fold them together)

virtio: balloon fixes

1) Tag and val args to update_stat() are no longer __le.
2) pages_to_bytes() should promote to u64 so we don't truncate.
3) Fix two checkpatch.pl warnings.

Signed-off-by: Rusty Russell <redacted>
---
 drivers/virtio/virtio_balloon.c |    8 +++++---
 include/linux/virtio_balloon.h  |    3 +--
 2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c
--- a/drivers/virtio/virtio_balloon.c
+++ b/drivers/virtio/virtio_balloon.c
@@ -158,14 +158,15 @@ static void leak_balloon(struct virtio_b
 }
 
 static inline void update_stat(struct virtio_balloon *vb, int idx,
-				__le16 tag, __le64 val)
+			       u16 tag, u64 val)
 {
 	BUG_ON(idx >= VIRTIO_BALLOON_S_NR);
 	vb->stats[idx].tag = tag;
 	vb->stats[idx].val = val;
 }
 
-#define pages_to_bytes(x) ((x) << PAGE_SHIFT)
+#define pages_to_bytes(x) ((u64)(x) << PAGE_SHIFT)
+
 static void update_balloon_stats(struct virtio_balloon *vb)
 {
 	unsigned long events[NR_VM_EVENT_ITEMS];
@@ -296,7 +297,8 @@ static int virtballoon_probe(struct virt
 		 * use it to signal us later.
 		 */
 		sg_init_one(&sg, vb->stats, sizeof vb->stats);
-		if (vb->stats_vq->vq_ops->add_buf(vb->stats_vq, &sg, 1, 0, vb) < 0)
+		if (vb->stats_vq->vq_ops->add_buf(vb->stats_vq,
+						  &sg, 1, 0, vb) < 0)
 			BUG();
 		vb->stats_vq->vq_ops->kick(vb->stats_vq);
 	}
diff --git a/include/linux/virtio_balloon.h b/include/linux/virtio_balloon.h
--- a/include/linux/virtio_balloon.h
+++ b/include/linux/virtio_balloon.h
@@ -28,8 +28,7 @@ struct virtio_balloon_config
 #define VIRTIO_BALLOON_S_MEMTOT   5   /* Total amount of memory */
 #define VIRTIO_BALLOON_S_NR       6
 
-struct virtio_balloon_stat
-{
+struct virtio_balloon_stat {
 	u16 tag;
 	u64 val;
 } __attribute__((packed));
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help