1a2a7862cSPradeep Jagadeesh /* 2a2a7862cSPradeep Jagadeesh * QEMU throttling command line options 3a2a7862cSPradeep Jagadeesh * 4a2a7862cSPradeep Jagadeesh * This work is licensed under the terms of the GNU GPL, version 2 or 5a2a7862cSPradeep Jagadeesh * (at your option) any later version. 6a2a7862cSPradeep Jagadeesh * 7a2a7862cSPradeep Jagadeesh * See the COPYING file in the top-level directory for details. 8a2a7862cSPradeep Jagadeesh * 9a2a7862cSPradeep Jagadeesh */ 10a2a7862cSPradeep Jagadeesh #ifndef THROTTLE_OPTIONS_H 11a2a7862cSPradeep Jagadeesh #define THROTTLE_OPTIONS_H 12a2a7862cSPradeep Jagadeesh 13432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_TOTAL "iops-total" 14432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_TOTAL_MAX "iops-total-max" 15432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_TOTAL_MAX_LENGTH "iops-total-max-length" 16432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_READ "iops-read" 17432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_READ_MAX "iops-read-max" 18432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_READ_MAX_LENGTH "iops-read-max-length" 19432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_WRITE "iops-write" 20432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_WRITE_MAX "iops-write-max" 21432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_WRITE_MAX_LENGTH "iops-write-max-length" 22432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_TOTAL "bps-total" 23432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_TOTAL_MAX "bps-total-max" 24432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_TOTAL_MAX_LENGTH "bps-total-max-length" 25432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_READ "bps-read" 26432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_READ_MAX "bps-read-max" 27432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_READ_MAX_LENGTH "bps-read-max-length" 28432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_WRITE "bps-write" 29432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_WRITE_MAX "bps-write-max" 30432d889eSManos Pitsidianakis #define QEMU_OPT_BPS_WRITE_MAX_LENGTH "bps-write-max-length" 31432d889eSManos Pitsidianakis #define QEMU_OPT_IOPS_SIZE "iops-size" 32*d8e7d87eSManos Pitsidianakis #define QEMU_OPT_THROTTLE_GROUP_NAME "throttle-group" 33432d889eSManos Pitsidianakis 34432d889eSManos Pitsidianakis #define THROTTLE_OPT_PREFIX "throttling." 35a2a7862cSPradeep Jagadeesh #define THROTTLE_OPTS \ 36a2a7862cSPradeep Jagadeesh { \ 37432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_TOTAL,\ 38a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 39a2a7862cSPradeep Jagadeesh .help = "limit total I/O operations per second",\ 40a2a7862cSPradeep Jagadeesh },{ \ 41432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_READ,\ 42a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 43a2a7862cSPradeep Jagadeesh .help = "limit read operations per second",\ 44a2a7862cSPradeep Jagadeesh },{ \ 45432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_WRITE,\ 46a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 47a2a7862cSPradeep Jagadeesh .help = "limit write operations per second",\ 48a2a7862cSPradeep Jagadeesh },{ \ 49432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_TOTAL,\ 50a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 51a2a7862cSPradeep Jagadeesh .help = "limit total bytes per second",\ 52a2a7862cSPradeep Jagadeesh },{ \ 53432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_READ,\ 54a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 55a2a7862cSPradeep Jagadeesh .help = "limit read bytes per second",\ 56a2a7862cSPradeep Jagadeesh },{ \ 57432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_WRITE,\ 58a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 59a2a7862cSPradeep Jagadeesh .help = "limit write bytes per second",\ 60a2a7862cSPradeep Jagadeesh },{ \ 61432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_TOTAL_MAX,\ 62a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 63a2a7862cSPradeep Jagadeesh .help = "I/O operations burst",\ 64a2a7862cSPradeep Jagadeesh },{ \ 65432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_READ_MAX,\ 66a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 67a2a7862cSPradeep Jagadeesh .help = "I/O operations read burst",\ 68a2a7862cSPradeep Jagadeesh },{ \ 69432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_WRITE_MAX,\ 70a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 71a2a7862cSPradeep Jagadeesh .help = "I/O operations write burst",\ 72a2a7862cSPradeep Jagadeesh },{ \ 73432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_TOTAL_MAX,\ 74a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 75a2a7862cSPradeep Jagadeesh .help = "total bytes burst",\ 76a2a7862cSPradeep Jagadeesh },{ \ 77432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_READ_MAX,\ 78a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 79a2a7862cSPradeep Jagadeesh .help = "total bytes read burst",\ 80a2a7862cSPradeep Jagadeesh },{ \ 81432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_WRITE_MAX,\ 82a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 83a2a7862cSPradeep Jagadeesh .help = "total bytes write burst",\ 84a2a7862cSPradeep Jagadeesh },{ \ 85432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_TOTAL_MAX_LENGTH,\ 86a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 87a2a7862cSPradeep Jagadeesh .help = "length of the iops-total-max burst period, in seconds",\ 88a2a7862cSPradeep Jagadeesh },{ \ 89432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_READ_MAX_LENGTH,\ 90a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 91a2a7862cSPradeep Jagadeesh .help = "length of the iops-read-max burst period, in seconds",\ 92a2a7862cSPradeep Jagadeesh },{ \ 93432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_WRITE_MAX_LENGTH,\ 94a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 95a2a7862cSPradeep Jagadeesh .help = "length of the iops-write-max burst period, in seconds",\ 96a2a7862cSPradeep Jagadeesh },{ \ 97432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_TOTAL_MAX_LENGTH,\ 98a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 99a2a7862cSPradeep Jagadeesh .help = "length of the bps-total-max burst period, in seconds",\ 100a2a7862cSPradeep Jagadeesh },{ \ 101432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_READ_MAX_LENGTH,\ 102a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 103a2a7862cSPradeep Jagadeesh .help = "length of the bps-read-max burst period, in seconds",\ 104a2a7862cSPradeep Jagadeesh },{ \ 105432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_BPS_WRITE_MAX_LENGTH,\ 106a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 107a2a7862cSPradeep Jagadeesh .help = "length of the bps-write-max burst period, in seconds",\ 108a2a7862cSPradeep Jagadeesh },{ \ 109432d889eSManos Pitsidianakis .name = THROTTLE_OPT_PREFIX QEMU_OPT_IOPS_SIZE,\ 110a2a7862cSPradeep Jagadeesh .type = QEMU_OPT_NUMBER,\ 111a2a7862cSPradeep Jagadeesh .help = "when limiting by iops max size of an I/O in bytes",\ 112a2a7862cSPradeep Jagadeesh } 113a2a7862cSPradeep Jagadeesh 114a2a7862cSPradeep Jagadeesh #endif 115