[xen-unstable test] 181154: tolerable FAIL
flight 181154 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/181154/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-qemuu-rhel6hvm-amd 7 xen-install fail in 181137 pass in 181154 test-amd64-i386-qemut-rhel6hvm-amd 7 xen-install fail in 181137 pass in 181154 test-amd64-amd64-pygrub 19 guest-localmigrate/x10 fail in 181137 pass in 181154 test-amd64-i386-xl-vhd 22 guest-start.2fail in 181137 pass in 181154 test-amd64-i386-xl-qemuu-dmrestrict-amd64-dmrestrict 7 xen-install fail pass in 181137 Tests which did not succeed, but are not blocking: test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stopfail like 181137 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 181137 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 181137 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stopfail like 181137 test-amd64-i386-xl-qemut-ws16-amd64 19 guest-stop fail like 181137 test-amd64-i386-xl-qemut-win7-amd64 19 guest-stop fail like 181137 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 181137 test-armhf-armhf-libvirt 16 saverestore-support-checkfail like 181137 test-armhf-armhf-libvirt-raw 15 saverestore-support-checkfail like 181137 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stopfail like 181137 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 181137 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stopfail like 181137 test-amd64-i386-libvirt-xsm 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-amd64-i386-xl-pvshim14 guest-start fail never pass test-arm64-arm64-xl-credit1 15 migrate-support-checkfail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-checkfail never pass test-arm64-arm64-xl 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-xl 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-checkfail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-credit2 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-multivcpu 15 migrate-support-checkfail never pass test-armhf-armhf-xl-multivcpu 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-checkfail never pass test-armhf-armhf-xl 15 migrate-support-checkfail never pass test-armhf-armhf-xl 16 saverestore-support-checkfail never pass test-amd64-i386-libvirt-raw 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-checkfail never pass test-armhf-armhf-xl-credit1 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-vhd 14 migrate-support-checkfail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-checkfail never pass test-amd64-i386-libvirt 15 migrate-support-checkfail never pass test-armhf-armhf-xl-vhd 14 migrate-support-checkfail never pass test-armhf-armhf-xl-vhd 15 saverestore-support-checkfail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-checkfail never pass test-armhf-armhf-xl-arndale 15 migrate-support-checkfail never pass test-armhf-armhf-xl-arndale 16 saverestore-support-checkfail never pass test-armhf-armhf-libvirt 15 migrate-support-checkfail never pass test-armhf-armhf-xl-rtds 15 migrate-support-checkfail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-checkfail never pass test-armhf-armhf-libvirt-raw 14 migrate-support-checkfail never pass ver
[linux-linus test] 181157: regressions - FAIL
flight 181157 linux-linus real [real] flight 181164 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181157/ http://logs.test-lab.xenproject.org/osstest/logs/181164/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stopfail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stopfail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stopfail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-bootfail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stopfail like 180278 test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit1 15 migrate-support-checkfail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-checkfail never pass test-arm64-arm64-xl 15 migrate-support-checkfail never pass test-arm64-arm64-xl 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-credit2 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-checkfail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-checkfail never pass test-arm64-arm64-xl-vhd 14 migrate-support-checkfail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-checkfail never pass version targeted for testing: linuxe5282a7d8f6b604f2bb6a06457734b8cf1e2f8f2 baseline version: linux6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 48 days Failing since180281 2023-04-17 06:24:36 Z 48 days 91 attempts Testing same since 181147 2023-06-03 18:40:28 Z0 days2 attempts 2605 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvopspass build-arm64-pvopspass build-armhf-pvopspass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-cores
[qemu-mainline test] 181159: regressions - FAIL
flight 181159 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181159/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-buildfail REGR. vs. 180691 build-arm64 6 xen-buildfail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow224 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-i386-xl-vhd 21 guest-start/debian.repeat fail in 181151 pass in 181159 test-amd64-amd64-xl-qcow2 21 guest-start/debian.repeat fail in 181151 pass in 181159 test-armhf-armhf-xl 18 guest-start/debian.repeat fail in 181151 pass in 181159 test-amd64-coresched-amd64-xl 14 guest-start fail pass in 181151 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stopfail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stopfail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-checkfail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-checkfail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-checkfail never pass test-amd64-i386-libvirt-raw 14 migrate-support-checkfail never pass test-armhf-armhf-libvirt 15 migrate-support-checkfail never pass test-armhf-armhf-xl 15 migrate-support-checkfail never pass test-armhf-armhf-xl 16 saverestore-support-checkfail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-checkfail never pass test-armhf-armhf-xl
[linux-linus test] 181167: regressions - FAIL
flight 181167 linux-linus real [real] flight 181172 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/181167/ http://logs.test-lab.xenproject.org/osstest/logs/181172/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-credit1 8 xen-boot fail REGR. vs. 180278 Tests which did not succeed, but are not blocking: test-armhf-armhf-examine 8 reboot fail like 180278 test-armhf-armhf-xl-multivcpu 8 xen-boot fail like 180278 test-armhf-armhf-xl-arndale 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-win7-amd64 19 guest-stopfail like 180278 test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stopfail like 180278 test-armhf-armhf-xl-credit2 8 xen-boot fail like 180278 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180278 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stopfail like 180278 test-armhf-armhf-libvirt 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-raw 8 xen-boot fail like 180278 test-armhf-armhf-libvirt-qcow2 8 xen-bootfail like 180278 test-armhf-armhf-xl 8 xen-boot fail like 180278 test-armhf-armhf-xl-vhd 8 xen-boot fail like 180278 test-armhf-armhf-xl-rtds 8 xen-boot fail like 180278 test-amd64-amd64-xl-qemut-ws16-amd64 19 guest-stopfail like 180278 test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit1 15 migrate-support-checkfail never pass test-arm64-arm64-xl-thunderx 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit1 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-thunderx 16 saverestore-support-checkfail never pass test-arm64-arm64-xl 15 migrate-support-checkfail never pass test-arm64-arm64-xl 16 saverestore-support-checkfail never pass test-arm64-arm64-xl-credit2 15 migrate-support-checkfail never pass test-arm64-arm64-xl-credit2 16 saverestore-support-checkfail never pass test-arm64-arm64-libvirt-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-libvirt-xsm 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-qcow2 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 14 migrate-support-checkfail never pass test-arm64-arm64-libvirt-raw 15 saverestore-support-checkfail never pass test-arm64-arm64-xl-vhd 14 migrate-support-checkfail never pass test-arm64-arm64-xl-vhd 15 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-raw 14 migrate-support-checkfail never pass version targeted for testing: linux5e89d62ec1014800e411868b8d750f9d631bdd01 baseline version: linux6c538e1adbfc696ac4747fb10d63e704344f763d Last test of basis 180278 2023-04-16 19:41:46 Z 49 days Failing since180281 2023-04-17 06:24:36 Z 48 days 92 attempts Testing same since 181167 2023-06-04 15:10:32 Z0 days1 attempts 2627 people touched revisions under test, not listing them all jobs: build-amd64-xsm pass build-arm64-xsm pass build-i386-xsm pass build-amd64 pass build-arm64 pass build-armhf pass build-i386 pass build-amd64-libvirt pass build-arm64-libvirt pass build-armhf-libvirt pass build-i386-libvirt pass build-amd64-pvopspass build-arm64-pvopspass build-armhf-pvopspass build-i386-pvops pass test-amd64-amd64-xl pass test-amd64-cores
[qemu-mainline test] 181168: regressions - FAIL
flight 181168 qemu-mainline real [real] http://logs.test-lab.xenproject.org/osstest/logs/181168/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-i386-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 build-arm64-xsm 6 xen-buildfail REGR. vs. 180691 build-arm64 6 xen-buildfail REGR. vs. 180691 test-amd64-amd64-libvirt 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-xsm 23 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 30 leak-check/check/src_host fail REGR. vs. 180691 test-amd64-i386-libvirt-pair 31 leak-check/check/dst_host fail REGR. vs. 180691 test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 21 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-libvirt-vhd 22 leak-check/check fail REGR. vs. 180691 test-amd64-i386-xl-vhd 24 leak-check/check fail REGR. vs. 180691 test-amd64-i386-libvirt-raw 22 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt 21 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-qcow2 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-libvirt-raw 20 leak-check/check fail REGR. vs. 180691 test-armhf-armhf-xl-vhd 20 leak-check/check fail REGR. vs. 180691 test-amd64-amd64-xl-qcow2 24 leak-check/check fail in 181159 REGR. vs. 180691 Tests which are failing intermittently (not blocking): test-amd64-coresched-amd64-xl 14 guest-start fail in 181159 pass in 181168 test-amd64-amd64-xl-qcow221 guest-start/debian.repeat fail pass in 181159 Tests which did not succeed, but are not blocking: test-arm64-arm64-libvirt-raw 1 build-check(1) blocked n/a test-arm64-arm64-libvirt-xsm 1 build-check(1) blocked n/a test-arm64-arm64-xl 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit1 1 build-check(1) blocked n/a test-arm64-arm64-xl-credit2 1 build-check(1) blocked n/a test-arm64-arm64-xl-thunderx 1 build-check(1) blocked n/a test-arm64-arm64-xl-vhd 1 build-check(1) blocked n/a test-arm64-arm64-xl-xsm 1 build-check(1) blocked n/a build-arm64-libvirt 1 build-check(1) blocked n/a test-amd64-amd64-xl-qemuu-win7-amd64 19 guest-stopfail like 180691 test-amd64-amd64-xl-qemuu-ws16-amd64 19 guest-stopfail like 180691 test-armhf-armhf-libvirt 16 saverestore-support-checkfail like 180691 test-armhf-armhf-libvirt-qcow2 15 saverestore-support-check fail like 180691 test-amd64-i386-xl-qemuu-ws16-amd64 19 guest-stop fail like 180691 test-armhf-armhf-libvirt-raw 15 saverestore-support-checkfail like 180691 test-amd64-amd64-qemuu-nested-amd 20 debian-hvm-install/l1/l2 fail like 180691 test-amd64-i386-xl-qemuu-win7-amd64 19 guest-stop fail like 180691 test-amd64-i386-xl-pvshim14 guest-start fail never pass test-amd64-i386-libvirt 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt-xsm 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-amd64-i386-libvirt-xsm 15 migrate-support-checkfail never pass test-amd64-amd64-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-amd64-i386-libvirt-qemuu-debianhvm-amd64-xsm 13 migrate-support-check fail never pass test-armhf-armhf-xl-credit1 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit1 16 saverestore-support-checkfail never pass test-amd64-amd64-libvirt-vhd 14 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 15 migrate-support-checkfail never pass test-armhf-armhf-xl-credit2 16 saverestore-support-checkfail never pass test-amd64-i386-libvirt-raw 14 migrate-support-checkfail never pass test-armhf-armhf-libvirt 15 migrate-support-checkfail never pass test-armhf-armhf-xl 15 migrate-support-checkfail never pass test-armhf-armhf-xl 16 saverestore-support-checkfail never pass test-armhf-armhf-libvirt-qcow2 14 migrate-support-checkfail never pass test-armhf-armhf-xl-rtds 15 migrate-support-checkfail never pass test-armhf-armhf-xl-rtds 16 saverestore-support-checkfail never pass test-armhf-armhf-xl-multivcpu
Re: [PATCH v2 10/40] xen/arm: split MMU and MPU config files from config.h
Hi, Sorry for the late reply. Got sidetracked by other tasks... On 2023/1/19 22:20, Julien Grall wrote: Hi, On 13/01/2023 05:28, Penny Zheng wrote: From: Wei Chen Xen defines some global configuration macros for Arm in config.h. We still want to use it for Armv8-R systems, but there are some address related macros that are defined for MMU systems. These macros will not be used by MPU systems, Adding ifdefery with CONFIG_HAS_MPU to gate these macros will result in a messy and hard-to-read/maintain code. So we keep some common definitions still in config.h, but move virtual address related definitions to a new file - config_mmu.h. And use a new file config_mpu.h to store definitions for MPU systems. To avoid spreading #ifdef everywhere, we keep the same definition names for MPU systems, like XEN_VIRT_START and HYPERVISOR_VIRT_START, but the definition contents are MPU specific. Signed-off-by: Wei Chen --- v1 -> v2: 1. Remove duplicated FIXMAP definitions from config_mmu.h --- xen/arch/arm/include/asm/config.h | 103 +++ xen/arch/arm/include/asm/config_mmu.h | 112 ++ xen/arch/arm/include/asm/config_mpu.h | 25 ++ I think this patch wants to be split in two. So we keep code movement separate from the introduction of new feature (e.g. MPU). Furthermore, I think it would be better to name the new header layout_* (or similar). Lastly, you are going to introduce several file with _mmu or _mpu. I would rather prefer if we create directory instead. 3 files changed, 147 insertions(+), 93 deletions(-) create mode 100644 xen/arch/arm/include/asm/config_mmu.h create mode 100644 xen/arch/arm/include/asm/config_mpu.h diff --git a/xen/arch/arm/include/asm/config.h b/xen/arch/arm/include/asm/config.h index 25a625ff08..86d8142959 100644 --- a/xen/arch/arm/include/asm/config.h +++ b/xen/arch/arm/include/asm/config.h @@ -48,6 +48,12 @@ #define INVALID_VCPU_ID MAX_VIRT_CPUS +/* Used for calculating PDX */ I am not entirely sure to understand the purpose of this comment. +#ifdef CONFIG_ARM_64 +#define FfaRAMETABLE_SIZE GB(32) +#define FRAMETABLE_NR (FRAMETABLE_SIZE / sizeof(*frame_table)) +#endif + Why do you only keep the 64-bit version in config.h? However... the frametable size is limited by the space we reserve in the virtual address space. This would not be the case for the MPU. Yes, but when calculating variable /pdx_group_valid/, which is defined as ''' /unsigned long __read_mostly pdx_group_valid[BITS_TO_LONGS(/ (/FRAMETABLE_NR + PDX_GROUP_COUNT - 1) / PDX_GROUP_COUNT)] = { [0] = 1 }/ ''', it relies on FRAMETABLE_NR to limit array length. If we are trying to get rid of the limit for the MPU, hmmm, it may bring a lot of changes in pdx common codes, for example, maybe variable /pdx_group_valid/ needs to be allocated in runtime, according actual frametable size, at least for MPU case. So, here, I intend to keep the same limit as MMU has for MPU too, or any suggestion from you? So having the limit in common seems a bit odd. In fact, I think we should look at getting rid of the limit for the MPU. [...] [...] Cheers, Cheers, Penny Zheng
Xen reliance on non-standard GCC features
Hi there. It appears Xen uses lots of GCC features that are outside the C99 standard. Some of them are documented GNU extensions to the language. Some of them seem not to be documented, so they do not qualify as language extensions (at least, not as far as the spirit and letter of functional-safety standards are concerned). Language extensions come with two problems: a) They limit portability. b) They significantly increase the cost of compiler qualification (commercial C compiler validation suites do not cover the extensions, and the cost of the extra validation effort will have to be born by whomever wants to use Xen for safety-related development). Said that, maybe the use of certain extensions is intentional, but for others it may be unintentional. The purpose of this message is to distinguish the ones from the others. In the following, when I mention the C99 standard, I refer to compiler uses with -std=c99 or -std=gnu99. Let us start from the (as far as I can tell) undocumented extensions: U1) Use of _Static_assert in C99 mode. U2) Empty initialization lists, both in C99 mode (ARM64 and X86_64) and C18 mode (only X86_64). U3) Returning void expressions. U4) Static functions or variables used in inline functions with external linkage. U5) Enumerator values outside the range of `int'. U6) Empty declarations. U7) Empty enum definitions. U8) Conversion between incompatible pointer types. U9) Conversion between function pointers and object pointers. U10) \m escape sequence. Is this an undocumented GCC extension or just a typo? In case you know where these are documented in the GCC manual, I would appreciate if you could tell me. Here is a list of extensions that are documented in the GCC manual: D1) Arithmetic operators on `void *' type: See Section "6.24 Arithmetic on void- and Function-Pointers" of the GCC manual." D2) Sizeof and alignof on `void *' type: See Section "6.24 Arithmetic on void- and Function-Pointers" of the GCC manual." D3) Use of GNU statement expressions. See Section "6.1 Statements and Declarations in Expressions" of the GCC manual. D4) Use of GNU statement expressions from macro expansion. See Section "6.1 Statements and Declarations in Expressions" of the GCC manual. (My advice is to read it fully, as there are implications.) D5) Record declarations with no members. See Section "6.19 Structures with No Members" of the GCC manual." D6) Structures containing a flexible array member as member of a structure. See Section "6.18 Arrays of Length Zero" of the GCC manual. D7) Structures containing a flexible array member as element of an array. See Section "6.18 Arrays of Length Zero" of the GCC manual. D8) Binary conditional operator. See Section "6.8 Conditionals with Omitted Operands" of the GCC manual. D9) Case labels with upper/lower values. See Section "6.30 Case Ranges" of the GCC manual. D10) Anonymous structure and union fields. See Section "6.63 Unnamed Structure and Union Fields" of the GCC manual. D11) Variadic macros called without any argument for '...' See Section "6.21 Macros with a Variable Number of Arguments" of the GCC manual. D12) Forward references to enum definitions. See Section "6.49 Incomplete enum Types" of the GCC manual. Finally, Xen seems to rely on explicitly undefined behavior, namely C99 UB 58: "A structure or union is defined as containing no named members (6.7.2.1)." All instances but one occur via macro BUILD_BUG_ON_ZERO, the remaining instance concerns struct `cpu_policy'. Reliance on undefined behavior might be hard to justify. I look forward to receiving your feedback. Kind regards, Roberto