[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [xen-4.6-testing bisection] complete test-xtf-amd64-amd64-1
branch xen-4.6-testing xenbranch xen-4.6-testing job test-xtf-amd64-amd64-1 testid xtf-fep 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/107147/ 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-1.xtf-fep.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-1.xtf-fep --summary-out=tmp/107147.bisection-summary --basis-template=106819 --blessings=real,real-bisect xen-4.6-testing test-xtf-amd64-amd64-1 xtf-fep Searching for failure / basis pass: 107134 fail [host=chardonnay1] / 106819 [host=rimava1] 106663 [host=godello0] 106529 [host=baroque0] 105991 [host=huxelrebe1] 105936 ok. Failure / basis pass flights: 107134 / 105936 (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 a7fd3717d99944530b04130f050e83402e64afed 15c0f1500fc078b6411d2c86842cb2f3fd7393c0 35d6d7bbb428f8a33d39d851d7d60d40a3605a58 2b8c78575cb534908ccc8824d76904376b9c38a5 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#a7fd3717d99944530b04130f050e83402e64afed-57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 git://xenbits.xen.org/qemu-xen.git#15c0f1500fc078b6411d2c86842cb2f3fd7393c0-44f3d4e6448e37588248db784193b7a047add65a git://xenbits.xen.org/xen.git#35d6d7bbb428f8a33d39d851d7d60d40a3605a58-7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 git://xenbits.xen.org/xtf.git#2b8c78575cb534908ccc8824d76904376b9c38a5-2b62f68c373159b0b4b0c24512ebfbc8fb02f58e From git://cache:9419/git://xenbits.xen.org/xen 7ff6d9f..f96efeb staging-4.6 -> origin/staging-4.6 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 1308 nodes in revision graph Searching for test results: 105936 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 a7fd3717d99944530b04130f050e83402e64afed 15c0f1500fc078b6411d2c86842cb2f3fd7393c0 35d6d7bbb428f8a33d39d851d7d60d40a3605a58 2b8c78575cb534908ccc8824d76904376b9c38a5 105991 [host=huxelrebe1] 106529 [host=baroque0] 106663 [host=godello0] 106819 [host=rimava1] 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 107141 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107144 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107145 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107134 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107146 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107147 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107119 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107131 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 a7fd3717d99944530b04130f050e83402e64afed 15c0f1500fc078b6411d2c86842cb2f3fd7393c0 35d6d7bbb428f8a33d39d851d7d60d40a3605a58 2b8c78575cb534908ccc8824d76904376b9c38a5 107132 fail b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7ff6d9fc19ef88d2ca3304a312c0e8a46b61f546 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107133 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 722ce03b32f37ef5af09105727b574339326d354 e9fbb8eb834b21a6f0ed18f41e35baa74ada3205 1d68cab2189bd035002ecc32cce154f979f9eff5 107135 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 b7e9d3976ba48f277da6004311f5025b07a884ea 722ce03b32f37ef5af09105727b574339326d354 18949dc6e1a520b6430f128a6981318552ca7823 83af19a3154af85815e4c8ffd170839b99685adc 107136 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a ac4c5d4ddf89051365da2acba5c6c306a10e0bbe 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107137 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 4f9617120b09ad1554d8e4a0ca817e27bfbbe1a1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107139 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 541ad61a921965c692ea31a06d9d14a1bb1e7346 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e 107140 pass b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e Searching for interesting versions Result found: flight 105936 (pass), for basis pass Result found: flight 107020 (fail), for basis failure Repro found: flight 107131 (pass), for basis pass Repro found: flight 107132 (fail), for basis failure 0 revisions at b65f2f457c49b2cfd7967c34b7a0b04c25587f13 c530a75c1e6a472b0eb9558310b518f0dfcd8860 57ca3f4a3092695dd553d3ff4540f5559b1c8fc7 44f3d4e6448e37588248db784193b7a047add65a 7017321d9b7b23adb50cad66d55ae526ab5d9fe1 2b62f68c373159b0b4b0c24512ebfbc8fb02f58e No revisions left to test, checking graph state. Result found: flight 107140 (pass), for last pass Result found: flight 107141 (fail), for first failure Repro found: flight 107144 (pass), for last pass Repro found: flight 107145 (fail), for first failure Repro found: flight 107146 (pass), for last pass Repro found: flight 107147 (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/107147/ 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-1.xtf-fep.{dot,ps,png,html,svg}. ---------------------------------------- 107147: tolerable truncated flight 107147 xen-4.6-testing real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/107147/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: test-xtf-amd64-amd64-1 10 xtf-fep fail baseline untested jobs: test-xtf-amd64-amd64-1 truncated ------------------------------------------------------------ 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 |