Re: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file
Hi, This series was run against 'syntax-check' test by patchew.org, which failed, please find the details below: Type: series Message-id: 20180816121031.10902-1-berra...@redhat.com Subject: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file === TEST SCRIPT BEGIN === #!/bin/bash # Testing script will be invoked under the git checkout with # HEAD pointing to a commit that has the patches applied on top of "base" # branch time bash -c './autogen.sh && make syntax-check' === TEST SCRIPT END === Updating bcb55ab053bc79561b55d0394490f4b64e0f2d01 >From https://github.com/patchew-project/libvirt t [tag update]patchew/20180816121031.10902-1-berra...@redhat.com -> patchew/20180816121031.10902-1-berra...@redhat.com Switched to a new branch 'test' e98d035e16 xml: report the filename (if any) when parsing files 31ae56563c cpu: split x86 map data into separate files e84c293152 cpu: split PPC64 map data into separate files b540748699 cpu: move the CPU map data files into a src/cpu_map directory 1a0963016b cpu: simplify failure cleanup paths 1ae202dae7 cpu: push more parsing logic into common code 57e0e0f4e8 cpu: fix cleanup when signature parsing fails 2e7b65ede4 cpu: allow include files for CPU definition === OUTPUT BEGIN === Updating submodules... Submodule 'gnulib' (https://git.savannah.gnu.org/git/gnulib.git/) registered for path '.gnulib' Submodule 'keycodemapdb' (https://gitlab.com/keycodemap/keycodemapdb.git) registered for path 'src/keycodemapdb' Cloning into '/var/tmp/patchew-tester-tmp-8thgtv1m/src/.gnulib'... Cloning into '/var/tmp/patchew-tester-tmp-8thgtv1m/src/src/keycodemapdb'... Submodule path '.gnulib': checked out '68df637b5f1b5c10370f6981d2a43a5cf74368df' Submodule path 'src/keycodemapdb': checked out '16e5b0787687d8904dad2c026107409eb9bfcb95' Running bootstrap... ./bootstrap: Bootstrapping from checked-out libvirt sources... ./bootstrap: consider installing git-merge-changelog from gnulib ./bootstrap: getting gnulib files... running: libtoolize --install --copy libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'. libtoolize: copying file 'build-aux/config.guess' libtoolize: copying file 'build-aux/config.sub' libtoolize: copying file 'build-aux/install-sh' libtoolize: copying file 'build-aux/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' ./bootstrap: .gnulib/gnulib-tool--no-changelog --aux-dir=build-aux --doc-base=doc --lib=libgnu --m4-base=m4/ --source-base=gnulib/lib/ --tests-base=gnulib/tests --local-dir=gnulib/local--lgpl=2 --with-tests --makefile-name=gnulib.mk --avoid=pt_chown --avoid=lock-tests --libtool --import ... Module list with included dependencies (indented): absolute-header accept accept-tests alloca alloca-opt alloca-opt-tests allocator areadlink areadlink-tests arpa_inet arpa_inet-tests assure autobuild base64 base64-tests binary-io binary-io-tests bind bind-tests bitrotate bitrotate-tests btowc btowc-tests builtin-expect byteswap byteswap-tests c-ctype c-ctype-tests c-strcase c-strcase-tests c-strcasestr c-strcasestr-tests calloc-posix canonicalize-lgpl canonicalize-lgpl-tests careadlinkat chown chown-tests clock-time cloexec cloexec-tests close close-tests configmake connect connect-tests count-leading-zeros count-leading-zeros-tests count-one-bits count-one-bits-tests ctype ctype-tests dirname-lgpl dosname double-slash-root dup dup-tests dup2 dup2-tests environ environ-tests errno errno-tests error execinfo exitfail extensions extern-inline fatal-signal fclose fclose-tests fcntl fcntl-h fcntl-h-tests fcntl-tests fd-hook fdatasync fdatasync-tests fdopen fdopen-tests fflush fflush-tests ffs ffs-tests ffsl ffsl-tests fgetc-tests filename flexmember float float-tests fnmatch fnmatch-tests fpieee fpucw fpurge fpurge-tests fputc-tests fread-tests freading freading-tests fseek fseek-tests fseeko fseeko-tests fstat fstat-tests fsync fsync-tests ftell ftell-tests ftello ftello-tests ftruncate ftruncate-tests func func-tests fwrite-tests getaddrinfo getaddrinfo-tests getcwd-lgpl getcwd-lgpl-tests getdelim getdelim-tests getdtablesize getdtablesize-tests getgroups getgroups-tests gethostname gethostname-tests getline getline-tests getopt-posix getopt-posix-tests getpagesize getpass getpeerna
Re: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file
Hi, This series was run against 'syntax-check' test by patchew.org, which failed, please find the details below: Type: series Message-id: 20180816121031.10902-1-berra...@redhat.com Subject: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file === TEST SCRIPT BEGIN === #!/bin/bash # Testing script will be invoked under the git checkout with # HEAD pointing to a commit that has the patches applied on top of "base" # branch time bash -c './autogen.sh && make syntax-check' === TEST SCRIPT END === Updating bcb55ab053bc79561b55d0394490f4b64e0f2d01 >From https://github.com/patchew-project/libvirt t [tag update]patchew/20180816121031.10902-1-berra...@redhat.com -> patchew/20180816121031.10902-1-berra...@redhat.com Switched to a new branch 'test' 0a584b73c9 xml: report the filename (if any) when parsing files f1f5b51850 cpu: split x86 map data into separate files a97f55673b cpu: split PPC64 map data into separate files 31f5ddf92e cpu: move the CPU map data files into a src/cpu_map directory 2e5689180b cpu: simplify failure cleanup paths ee0428e3d9 cpu: push more parsing logic into common code 5bebed9f68 cpu: fix cleanup when signature parsing fails 5e0140660c cpu: allow include files for CPU definition === OUTPUT BEGIN === Updating submodules... Submodule 'gnulib' (https://git.savannah.gnu.org/git/gnulib.git/) registered for path '.gnulib' Submodule 'keycodemapdb' (https://gitlab.com/keycodemap/keycodemapdb.git) registered for path 'src/keycodemapdb' Cloning into '/var/tmp/patchew-tester-tmp-i7a5yb6y/src/.gnulib'... Cloning into '/var/tmp/patchew-tester-tmp-i7a5yb6y/src/src/keycodemapdb'... Submodule path '.gnulib': checked out '68df637b5f1b5c10370f6981d2a43a5cf74368df' Submodule path 'src/keycodemapdb': checked out '16e5b0787687d8904dad2c026107409eb9bfcb95' Running bootstrap... ./bootstrap: Bootstrapping from checked-out libvirt sources... ./bootstrap: consider installing git-merge-changelog from gnulib ./bootstrap: getting gnulib files... running: libtoolize --install --copy libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'. libtoolize: copying file 'build-aux/config.guess' libtoolize: copying file 'build-aux/config.sub' libtoolize: copying file 'build-aux/install-sh' libtoolize: copying file 'build-aux/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' ./bootstrap: .gnulib/gnulib-tool--no-changelog --aux-dir=build-aux --doc-base=doc --lib=libgnu --m4-base=m4/ --source-base=gnulib/lib/ --tests-base=gnulib/tests --local-dir=gnulib/local--lgpl=2 --with-tests --makefile-name=gnulib.mk --avoid=pt_chown --avoid=lock-tests --libtool --import ... Module list with included dependencies (indented): absolute-header accept accept-tests alloca alloca-opt alloca-opt-tests allocator areadlink areadlink-tests arpa_inet arpa_inet-tests assure autobuild base64 base64-tests binary-io binary-io-tests bind bind-tests bitrotate bitrotate-tests btowc btowc-tests builtin-expect byteswap byteswap-tests c-ctype c-ctype-tests c-strcase c-strcase-tests c-strcasestr c-strcasestr-tests calloc-posix canonicalize-lgpl canonicalize-lgpl-tests careadlinkat chown chown-tests clock-time cloexec cloexec-tests close close-tests configmake connect connect-tests count-leading-zeros count-leading-zeros-tests count-one-bits count-one-bits-tests ctype ctype-tests dirname-lgpl dosname double-slash-root dup dup-tests dup2 dup2-tests environ environ-tests errno errno-tests error execinfo exitfail extensions extern-inline fatal-signal fclose fclose-tests fcntl fcntl-h fcntl-h-tests fcntl-tests fd-hook fdatasync fdatasync-tests fdopen fdopen-tests fflush fflush-tests ffs ffs-tests ffsl ffsl-tests fgetc-tests filename flexmember float float-tests fnmatch fnmatch-tests fpieee fpucw fpurge fpurge-tests fputc-tests fread-tests freading freading-tests fseek fseek-tests fseeko fseeko-tests fstat fstat-tests fsync fsync-tests ftell ftell-tests ftello ftello-tests ftruncate ftruncate-tests func func-tests fwrite-tests getaddrinfo getaddrinfo-tests getcwd-lgpl getcwd-lgpl-tests getdelim getdelim-tests getdtablesize getdtablesize-tests getgroups getgroups-tests gethostname gethostname-tests getline getline-tests getopt-posix getopt-posix-tests getpagesize getpass getpeerna
Re: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file
Hi, This series was run against 'syntax-check' test by patchew.org, which failed, please find the details below: Type: series Message-id: 20180816121031.10902-1-berra...@redhat.com Subject: [libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file === TEST SCRIPT BEGIN === #!/bin/bash # Testing script will be invoked under the git checkout with # HEAD pointing to a commit that has the patches applied on top of "base" # branch time bash -c './autogen.sh && make syntax-check' === TEST SCRIPT END === Updating bcb55ab053bc79561b55d0394490f4b64e0f2d01 >From https://github.com/patchew-project/libvirt f951277716..480d47cd7a master -> master * [new tag] patchew/20180816121031.10902-1-berra...@redhat.com -> patchew/20180816121031.10902-1-berra...@redhat.com Switched to a new branch 'test' e450f982d0 xml: report the filename (if any) when parsing files bfa4d32033 cpu: split x86 map data into separate files 9eb6a91c8c cpu: split PPC64 map data into separate files f3d5e0de5f cpu: move the CPU map data files into a src/cpu_map directory 1855c26bcf cpu: simplify failure cleanup paths a51f445fa3 cpu: push more parsing logic into common code 47b0e0bf56 cpu: fix cleanup when signature parsing fails b4928de106 cpu: allow include files for CPU definition === OUTPUT BEGIN === Updating submodules... Submodule 'gnulib' (https://git.savannah.gnu.org/git/gnulib.git/) registered for path '.gnulib' Submodule 'keycodemapdb' (https://gitlab.com/keycodemap/keycodemapdb.git) registered for path 'src/keycodemapdb' Cloning into '/var/tmp/patchew-tester-tmp-o51rq8pj/src/.gnulib'... fatal: unable to access 'https://git.savannah.gnu.org/git/gnulib.git/': The requested URL returned error: 502 fatal: clone of 'https://git.savannah.gnu.org/git/gnulib.git/' into submodule path '/var/tmp/patchew-tester-tmp-o51rq8pj/src/.gnulib' failed Failed to clone '.gnulib'. Retry scheduled Cloning into '/var/tmp/patchew-tester-tmp-o51rq8pj/src/src/keycodemapdb'... Cloning into '/var/tmp/patchew-tester-tmp-o51rq8pj/src/.gnulib'... Submodule path '.gnulib': checked out '68df637b5f1b5c10370f6981d2a43a5cf74368df' Submodule path 'src/keycodemapdb': checked out '16e5b0787687d8904dad2c026107409eb9bfcb95' Submodule path '.gnulib': checked out '68df637b5f1b5c10370f6981d2a43a5cf74368df' Running bootstrap... ./bootstrap: Bootstrapping from checked-out libvirt sources... ./bootstrap: consider installing git-merge-changelog from gnulib ./bootstrap: getting gnulib files... running: libtoolize --install --copy libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, 'build-aux'. libtoolize: copying file 'build-aux/config.guess' libtoolize: copying file 'build-aux/config.sub' libtoolize: copying file 'build-aux/install-sh' libtoolize: copying file 'build-aux/ltmain.sh' libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'. libtoolize: copying file 'm4/libtool.m4' libtoolize: copying file 'm4/ltoptions.m4' libtoolize: copying file 'm4/ltsugar.m4' libtoolize: copying file 'm4/ltversion.m4' libtoolize: copying file 'm4/lt~obsolete.m4' ./bootstrap: .gnulib/gnulib-tool--no-changelog --aux-dir=build-aux --doc-base=doc --lib=libgnu --m4-base=m4/ --source-base=gnulib/lib/ --tests-base=gnulib/tests --local-dir=gnulib/local--lgpl=2 --with-tests --makefile-name=gnulib.mk --avoid=pt_chown --avoid=lock-tests --libtool --import ... Module list with included dependencies (indented): absolute-header accept accept-tests alloca alloca-opt alloca-opt-tests allocator areadlink areadlink-tests arpa_inet arpa_inet-tests assure autobuild base64 base64-tests binary-io binary-io-tests bind bind-tests bitrotate bitrotate-tests btowc btowc-tests builtin-expect byteswap byteswap-tests c-ctype c-ctype-tests c-strcase c-strcase-tests c-strcasestr c-strcasestr-tests calloc-posix canonicalize-lgpl canonicalize-lgpl-tests careadlinkat chown chown-tests clock-time cloexec cloexec-tests close close-tests configmake connect connect-tests count-leading-zeros count-leading-zeros-tests count-one-bits count-one-bits-tests ctype ctype-tests dirname-lgpl dosname double-slash-root dup dup-tests dup2 dup2-tests environ environ-tests errno errno-tests error execinfo exitfail extensions extern-inline fatal-signal fclose fclose-tests fcntl fcntl-h fcntl-h-tests fcntl-tests fd-hook fdatasync fdatasync-tests fdopen fdopen-tests fflush fflush-tests ffs ffs-tests ffsl ffsl-tests fgetc-tests filename flexmember float float-tests fnmatch fnmatch-tests fpieee fpucw fpurge fpurge-tests fputc-tests fread-tests freading freading-tests fseek fseek-tests fseeko fseeko-test
[libvirt] [PATCH v2 0/8] cpu: modularize the CPU map data file
Currently we have a cpu_map.xml file that contains all the features and CPU models for all architectures in one place. I frequently find myself wondering about the differences between CPU models, but it is hard to compare them as the list of features is huge. With this patch series we end up with a large set of small files, one per named CPU model, along with one for the feature and vendor definitions cpu_map/index.xml cpu_map/ppc64_POWER6.xml cpu_map/ppc64_POWER7.xml cpu_map/ppc64_POWER8.xml cpu_map/ppc64_POWER9.xml cpu_map/ppc64_POWERPC_e5500.xml cpu_map/ppc64_POWERPC_e6500.xml cpu_map/ppc64_vendors.xml cpu_map/x86_486.xml cpu_map/x86_athlon.xml cpu_map/x86_Broadwell-IBRS.xml cpu_map/x86_Broadwell-noTSX-IBRS.xml cpu_map/x86_Broadwell-noTSX.xml cpu_map/x86_Broadwell.xml cpu_map/x86_Conroe.xml cpu_map/x86_core2duo.xml cpu_map/x86_coreduo.xml cpu_map/x86_cpu64-rhel5.xml cpu_map/x86_cpu64-rhel6.xml cpu_map/x86_EPYC-IBRS.xml cpu_map/x86_EPYC.xml cpu_map/x86_features.xml cpu_map/x86_Haswell-IBRS.xml cpu_map/x86_Haswell-noTSX-IBRS.xml cpu_map/x86_Haswell-noTSX.xml cpu_map/x86_Haswell.xml cpu_map/x86_IvyBridge-IBRS.xml cpu_map/x86_IvyBridge.xml cpu_map/x86_kvm32.xml cpu_map/x86_kvm64.xml cpu_map/x86_n270.xml cpu_map/x86_Nehalem-IBRS.xml cpu_map/x86_Nehalem.xml cpu_map/x86_Opteron_G1.xml cpu_map/x86_Opteron_G2.xml cpu_map/x86_Opteron_G3.xml cpu_map/x86_Opteron_G4.xml cpu_map/x86_Opteron_G5.xml cpu_map/x86_Penryn.xml cpu_map/x86_pentium2.xml cpu_map/x86_pentium3.xml cpu_map/x86_pentiumpro.xml cpu_map/x86_pentium.xml cpu_map/x86_phenom.xml cpu_map/x86_qemu32.xml cpu_map/x86_qemu64.xml cpu_map/x86_SandyBridge-IBRS.xml cpu_map/x86_SandyBridge.xml cpu_map/x86_Skylake-Client-IBRS.xml cpu_map/x86_Skylake-Client.xml cpu_map/x86_Skylake-Server-IBRS.xml cpu_map/x86_Skylake-Server.xml cpu_map/x86_vendors.xml cpu_map/x86_Westmere-IBRS.xml cpu_map/x86_Westmere.xml The main cpu_map/index.xml file is now just a list of statements to pull in the individual files Now we can easily see the differences in each model: $ diff cpu_map/x86_Broadwell.xml cpu_map/x86_Skylake-Client.xml 2,3c2,3 < < --- > > 5a6 > 8a10 > 18a21 > 30a34 > 42a47 > 56a62 > 57a64 > 58a66,67 > > Changed in v2: - Moved all XML files into a new src/cpu_map/ directory - Simplify the goto labels for error code paths. - Code style fixes Daniel P. Berrangé (8): cpu: allow include files for CPU definition cpu: fix cleanup when signature parsing fails cpu: push more parsing logic into common code cpu: simplify failure cleanup paths cpu: move the CPU map data files into a src/cpu_map directory cpu: split PPC64 map data into separate files cpu: split x86 map data into separate files xml: report the filename (if any) when parsing files libvirt.spec.in |2 +- mingw-libvirt.spec.in|4 +- src/Makefile.am |7 +- src/cpu/cpu_map.c| 161 +- src/cpu/cpu_map.h| 22 +- src/cpu/cpu_map.xml | 2382 -- src/cpu/cpu_ppc64.c | 142 +- src/cpu/cpu_x86.c| 255 +-- src/cpu_map/Makefile.inc.am | 61 + src/cpu_map/index.xml| 75 + src/cpu_map/ppc64_POWER6.xml |6 + src/cpu_map/ppc64_POWER7.xml |7 + src/cpu_map/ppc64_POWER8.xml |8 + src/cpu_map/ppc64_POWER9.xml |6 + src/cpu_map/ppc64_POWERPC_e5500.xml |6 + src/cpu_map/ppc64_POWERPC_e6500.xml |6 + src/cpu_map/ppc64_vendors.xml|4 + src/cpu_map/x86_486.xml |7 + src/cpu_map/x86_Broadwell-IBRS.xml | 61 + src/cpu_map/x86_Broadwell-noTSX-IBRS.xml | 59 + src/cpu_map/x86_Broadwell-noTSX.xml | 58 + src/cpu_map/x86_Broadwell.xml| 60 + src/cpu_map/x86_Conroe.xml | 33 + src/cpu_map/x86_EPYC-IBRS.xml| 73 + src/cpu_map/x86_EPYC.xml | 72 + src/cpu_map/x86_Haswell-IBRS.xml | 57 + src/cpu_map/x86_Haswell-noTSX-IBRS.xml | 55 + src/cpu_map/x86_Haswell-noTSX.xml| 54 + src/cpu_map/x86_Haswell.xml | 56 + src/cpu_map/x86_IvyBridge-IBRS.xml | 51 + src/cpu_map/x86_IvyBridge.xml| 50 + src/cpu_map/x86_Nehalem-IBRS.xml | 38 + src/cpu_map/x86_Nehalem.xml | 37 + src/cpu_map/x86_Opteron_G1.xml | 31 + src/cpu_map/x86_Opteron_G2.xml | 35 + src/cpu_map/x86_Opteron_G3.xml | 40 + src/cpu_map/x86_Opteron_G4.xml | 50 +