xref: /aosp_15_r20/external/crosvm/docs/book/src/devices/balloon.md (revision bb4ee6a4ae7042d18b07a98463b9c8b875e44b39)
1*bb4ee6a4SAndroid Build Coastguard Worker# Balloon
2*bb4ee6a4SAndroid Build Coastguard Worker
3*bb4ee6a4SAndroid Build Coastguard Workercrosvm supports
4*bb4ee6a4SAndroid Build Coastguard Worker[virtio-balloon](https://docs.oasis-open.org/virtio/virtio/v1.1/csprd01/virtio-v1.1-csprd01.html#x1-2790005)
5*bb4ee6a4SAndroid Build Coastguard Workerfor managing guest memory.
6*bb4ee6a4SAndroid Build Coastguard Worker
7*bb4ee6a4SAndroid Build Coastguard Worker## How to control the balloon size
8*bb4ee6a4SAndroid Build Coastguard Worker
9*bb4ee6a4SAndroid Build Coastguard WorkerWhen running a VM, specify `VM_SOCKET` with `-s` option. (example: `/run/crosvm.sock`)
10*bb4ee6a4SAndroid Build Coastguard Worker
11*bb4ee6a4SAndroid Build Coastguard Worker```sh
12*bb4ee6a4SAndroid Build Coastguard Workercrosvm run \
13*bb4ee6a4SAndroid Build Coastguard Worker    -s ${CROSVM_SOCKET} \
14*bb4ee6a4SAndroid Build Coastguard Worker    # usual crosvm args
15*bb4ee6a4SAndroid Build Coastguard Worker    /path/to/bzImage
16*bb4ee6a4SAndroid Build Coastguard Worker```
17*bb4ee6a4SAndroid Build Coastguard Worker
18*bb4ee6a4SAndroid Build Coastguard WorkerThen, open another terminal and specify the balloon size in bytes with `crosvm balloon` command.
19*bb4ee6a4SAndroid Build Coastguard Worker
20*bb4ee6a4SAndroid Build Coastguard Worker```sh
21*bb4ee6a4SAndroid Build Coastguard Workercrosvm balloon 4096 ${CROSVM_SOCKET}
22*bb4ee6a4SAndroid Build Coastguard Worker```
23*bb4ee6a4SAndroid Build Coastguard Worker
24*bb4ee6a4SAndroid Build Coastguard WorkerNote: The size of balloon is managed in 4096 bytes units. The specified value will be rounded down
25*bb4ee6a4SAndroid Build Coastguard Workerto a multiple of 4096 bytes.
26*bb4ee6a4SAndroid Build Coastguard Worker
27*bb4ee6a4SAndroid Build Coastguard WorkerYou can confirm the balloon size with `crosvm balloon_stats` command.
28*bb4ee6a4SAndroid Build Coastguard Worker
29*bb4ee6a4SAndroid Build Coastguard Worker```sh
30*bb4ee6a4SAndroid Build Coastguard Workercrosvm balloon_stats ${CROSVM_SOCKET}
31*bb4ee6a4SAndroid Build Coastguard Worker```
32