Back in September, Leonid Block added a whole bunch of macros (commit 540b8492618) to improve readability of qcow2.h a bit (commit b6a95c6d100). He later used them to fix the "vdi" driver's parameter cluster_size's default value (commit 3dd5b8f4718). He has now proposed a further patch[1] to auto-generate these macros. That patch feels overengineered to me.
On closer examination, I found I dislike the macros before his new patch. So did Eric Blake. The macros exist because the common KiB, MiB, ... macros aren't usable when you need a literal rather than a constant expression. stringify() does, and we use it to define the QemuOpts default value. Eric proposed to improve QemuOpts to accept integer default values, too[2]. Before I review that patch series, I want to establish a "stupidest solution that can possibly work" baseline. And that's what this patch is. [1] [PATCH v2 0/1] include: Auto-generate the sizes lookup table Message-ID: <20190103213320.2653-1-lbl...@janustech.com> [2] [PATCH v3 0/6] include: Auto-generate the sizes lookup table Message-Id: <20190110191901.5082-1-ebl...@redhat.com> Markus Armbruster (1): block: Eliminate the S_1KiB, S_2KiB, ... macros block/qcow2.h | 10 +++--- block/vdi.c | 3 +- include/qemu/units.h | 73 -------------------------------------------- 3 files changed, 7 insertions(+), 79 deletions(-) -- 2.17.2