v2: https://lists.gnu.org/archive/html/qemu-devel/2017-06/msg01147.html
Changes from v2: - Dropped the configure-time check. Instead, do this at init-time as suggested by Richard. - Added Pranith's R-b tag to the TCG patch. - Added cache info query for Windows thanks to Geerd's help. - Added cache info query for MacOS [ #ifdef __APPLE__ ] via sysctl. (Note: I only tested the code on a standalone program, since I cannot install QEMU's dependences on the MacOS machine I got access to) - Use int instead of unsigned int for the line sizes. This allows us to use ROUND_UP without having to cast to int (ROUND_UP negates the alignment parameter) Question: is it worth adding a paranoid check to make sure the linesizes we obtain are a pow2? If there's a bug somewhere in the reporting, we'll get in trouble due to ROUND_UP, which only works with pow2 parameters. A safer alternative is to use QEMU_ALIGN_UP, but it's slower. This patchset applies cleanly on top of the current master (65dfad62a). Thanks, Emilio