[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [xen-4.6-testing bisection] complete test-xtf-amd64-amd64-5
branch xen-4.6-testing xenbranch xen-4.6-testing job test-xtf-amd64-amd64-5 testid xtf-run Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git Tree: xtf git://xenbits.xen.org/xtf.git *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 Bug not present: 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/107130/ commit 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 Author: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Date: Fri Mar 31 09:03:32 2017 +0200 xen: sched: don't call hooks of the wrong scheduler via VCPU2OP Within context_saved(), we call the context_saved hook, and we use VCPU2OP() to determine from what scheduler. VCPU2OP uses DOM2OP, which uses d->cpupool, which is NULL when d is the idle domain. And in that case, DOM2OP just returns ops, the scheduler of cpupool0. Therefore, if: - cpupool0's scheduler defines context_saved (like Credit2 and RTDS do), - we are not in cpupool0 (i.e., our scheduler is not ops), - we are context switching from idle, we call VCPU2OP(idle_vcpu), which means DOM2OP(idle->cpupool), which is ops. Therefore, we both: - check if context_saved is defined in the wrong scheduler; - if yes, call the wrong one. When using Credit2 at boot, and also Credit2 in the other cpupool, this is wrong but innocuous, because it only involves the idle vcpus. When using Credit2 at boot, and Credit1 in the other cpupool, this is *totally* wrong, and it's by chance it does not explode! When using Credit2 and other schedulers I'm developping, I hit the following assert (in sched_credit2.c, on a CPU inside a cpupool that does not use Credit2): csched2_context_saved() { ... ASSERT(!vcpu_on_runq(svc)); ... } Fix this by dealing explicitly, in VCPU2OP, with idle vcpus, returning the scheduler of the pCPU they (always) run on. Signed-off-by: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Reviewed-by: Juergen Gross <jgross@xxxxxxxx> Reviewed-by: George Dunlap <george.dunlap@xxxxxxxxxx> master commit: a3653e6a279213ba4e883b2252415dc98633106a master date: 2017-03-27 14:28:05 +0100 For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/xen-4.6-testing/test-xtf-amd64-amd64-5.xtf-run.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/xen-4.6-testing/test-xtf-amd64-amd64-5.xtf-run --summary-out=tmp/107130.bisection-summary --basis-template=106819 --blessings=real,real-bisect xen-4.6-testing test-xtf-amd64-amd64-5 xtf-run Searching for failure / basis pass: 107119 fail [host=baroque1] / 106819 [host=baroque0] 106663 [host=rimava0] 106529 ok. Failure / basis pass flights: 107119 / 106529 (tree with no url: minios) (tree with no url: ovmf) (tree with no url: seabios) Tree: linux git://xenbits.xen.org/linux-pvops.git Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://xenbits.xen.org/qemu-xen.git Tree: xen git://xenbits.xen.org/xen.git Tree: xtf git://xenbits.xen.org/xtf.git Latest b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e Basis pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 722ce03b32f37ef5af09105727b574339326d354 abb5a1291555d0e33a19e2a252f00852a9026f98 83af19a3154af85815e4c8ffd170839b99685adc Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/linux-pvops.git#b65f2f457c49b2cfd7967c34b7a0b04c25587f13-b65f2f457c49b2cfd7967c34b7a0b04c25587f13 git://xenbits.xen.org/osstest/linux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860-c530a75c1e6a472b0eb9558310b518f0dfcd8860 git://xenbits.xen.org/qemu-xen-traditional.git#b7e9d3976ba48f277da6004311f5025b07a884ea-57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 git://xenbits.xen.org/qemu-xen.git#722ce03b32f37ef5af09105727b574339326d354-44f3d4e6448e37588248db784193b7a047add65a git://xenbits.xen.org/xen.git#abb5a1291555d0e33a19e2a252f00852a9026f98-7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 git://xenbits.xen.org/xtf.git#83af19a3154af85815e4c8ffd170839b99685adc-2b62f68c373159b0b4b0c24512ebfbc8fb02f58e Use of uninitialized value $parents in array dereference at ./adhoc-revtuple-generator line 465. Use of uninitialized value in concatenation (.) or string at ./adhoc-revtuple-generator line 465. Loaded 1304 nodes in revision graph Searching for test results: 106529 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 722ce03b32f37ef5af09105727b574339326d354 abb5a1291555d0e33a19e2a252f00852a9026f98 83af19a3154af85815e4c8ffd170839b99685adc 106663 [host=rimava0] 106819 [host=baroque0] 107020 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107042 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107076 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107097 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107116 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 722ce03b32f37ef5af09105727b574339326d354 abb5a1291555d0e33a19e2a252f00852a9026f98 83af19a3154af85815e4c8ffd170839b99685adc 107117 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107118 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 44f3d4e6448e37588248db784193b7a047add65a 18949dc6e1a520b6430f128a6981318552ca7823 83af19a3154af85815e4c8ffd170839b99685adc 107120 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 9eb0aa2f47a78ffbab9e7ab9974440a132ce073f 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107121 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 541ad61a921965c692ea31a06d9d14a1bb1e7346 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107124 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107125 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107126 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107119 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107128 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107129 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107130 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e Searching for interesting versions Result found: flight 106529 (pass), for basis pass Result found: flight 107020 (fail), for basis failure Repro found: flight 107116 (pass), for basis pass Repro found: flight 107117 (fail), for basis failure 0 revisions at b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e No revisions left to test, checking graph state. Result found: flight 107124 (pass), for last pass Result found: flight 107125 (fail), for first failure Repro found: flight 107126 (pass), for last pass Repro found: flight 107128 (fail), for first failure Repro found: flight 107129 (pass), for last pass Repro found: flight 107130 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: xen git://xenbits.xen.org/xen.git Bug introduced: 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 Bug not present: 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/107130/ commit 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 Author: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Date: Fri Mar 31 09:03:32 2017 +0200 xen: sched: don't call hooks of the wrong scheduler via VCPU2OP Within context_saved(), we call the context_saved hook, and we use VCPU2OP() to determine from what scheduler. VCPU2OP uses DOM2OP, which uses d->cpupool, which is NULL when d is the idle domain. And in that case, DOM2OP just returns ops, the scheduler of cpupool0. Therefore, if: - cpupool0's scheduler defines context_saved (like Credit2 and RTDS do), - we are not in cpupool0 (i.e., our scheduler is not ops), - we are context switching from idle, we call VCPU2OP(idle_vcpu), which means DOM2OP(idle->cpupool), which is ops. Therefore, we both: - check if context_saved is defined in the wrong scheduler; - if yes, call the wrong one. When using Credit2 at boot, and also Credit2 in the other cpupool, this is wrong but innocuous, because it only involves the idle vcpus. When using Credit2 at boot, and Credit1 in the other cpupool, this is *totally* wrong, and it's by chance it does not explode! When using Credit2 and other schedulers I'm developping, I hit the following assert (in sched_credit2.c, on a CPU inside a cpupool that does not use Credit2): csched2_context_saved() { ... ASSERT(!vcpu_on_runq(svc)); ... } Fix this by dealing explicitly, in VCPU2OP, with idle vcpus, returning the scheduler of the pCPU they (always) run on. Signed-off-by: Dario Faggioli <dario.faggioli@xxxxxxxxxx> Reviewed-by: Juergen Gross <jgross@xxxxxxxx> Reviewed-by: George Dunlap <george.dunlap@xxxxxxxxxx> master commit: a3653e6a279213ba4e883b2252415dc98633106a master date: 2017-03-27 14:28:05 +0100 Revision graph left in /home/logs/results/bisect/xen-4.6-testing/test-xtf-amd64-amd64-5.xtf-run.{dot,ps,png,html,svg}. ---------------------------------------- 107130: tolerable ALL FAIL flight 107130 xen-4.6-testing real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/107130/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: test-xtf-amd64-amd64-5 11 xtf-run fail baseline untested jobs: test-xtf-amd64-amd64-5 fail ------------------------------------------------------------ sg-report-flight on osstest.test-lab.xenproject.org logs: /home/logs/logs images: /home/logs/images Logs, config files, etc. are available at http://logs.test-lab.xenproject.org/osstest/logs Explanation of these reports, and of osstest in general, is at http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README.email;hb=master http://xenbits.xen.org/gitweb/?p=osstest.git;a=blob;f=README;hb=master Test harness code can be found at http://xenbits.xen.org/gitweb?p=osstest.git;a=summary _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx https://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |