xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Ian Campbell <ian.campbell@citrix.com>
To: Anthony PERARD <anthony.perard@citrix.com>,
	Wei Liu <wei.liu2@citrix.com>
Cc: xen-devel@lists.xensource.com,
	osstest service owner <osstest-admin@xenproject.org>
Subject: Re: [ovmf bisection] complete test-amd64-amd64-xl-qemuu-ovmf-amd64
Date: Tue, 8 Sep 2015 09:41:58 +0100	[thread overview]
Message-ID: <1441701718.13570.6.camel@citrix.com> (raw)
In-Reply-To: <E1ZZ8x0-0004Sx-2A@osstest.test-lab.xenproject.org>

Anthony/Wei,

Please could one of you investigate this new upstream OVMF failure.

Ian.

On Tue, 2015-09-08 at 02:48 +0000, osstest service owner wrote:
> branch xen-unstable
> xen branch xen-unstable
> job test-amd64-amd64-xl-qemuu-ovmf-amd64
> test debian-hvm-install
> 
> Tree: linux git://xenbits.xen.org/linux-pvops.git
> Tree: linuxfirmware git://xenbits.xen.org/osstest/linux-firmware.git
> Tree: ovmf https://github.com/tianocore/edk2.git
> Tree: qemu git://xenbits.xen.org/staging/qemu-xen-unstable.git
> Tree: qemuu git://xenbits.xen.org/staging/qemu-upstream-unstable.git
> Tree: xen git://xenbits.xen.org/xen.git
> 
> *** Found and reproduced problem changeset ***
> 
>   Bug is in tree:  ovmf https://github.com/tianocore/edk2.git
>   Bug introduced:  ead7cb12d5b0e23b55e47f38a8a0675958783668
>   Bug not present: 1a85139d9eac7f260a21a6ecb06a578a5255edf7
> 
> 
>   commit ead7cb12d5b0e23b55e47f38a8a0675958783668
>   Author: Laszlo Ersek <lersek@redhat.com>
>   Date:   Fri Aug 28 08:12:51 2015 +0000
>   
>       OvmfPkg: prevent code execution from DXE stack
>       
>       SVN rev 18166 ("MdeModulePkg DxeIpl: Add stack NX support") enables
>       platforms to request non-executable stack for the DXE phase, by 
> setting
>       PcdSetNxForStack to TRUE.
>       
>       The PCD defaults to FALSE, because:
>       
>       (a) A non-executable DXE stack is a new feature and causes changes 
> in
>           behavior. Some platform could rely on executing code from the 
> stack.
>       
>       (b) The code enabling NX in the DXE IPL PEIM enforces the
>       
>             PcdSetNxForStack ==> PcdDxeIplBuildPageTables
>       
>           implication for "64-bit PEI + 64-bit DXE" platforms, with a new
>           ASSERT(). Some platform might not comply with this requirement
>           immediately.
>       
>       Regarding (a), in none of the OVMF builds do we try to execute code 
> from
>       the stack.
>       
>       Regarding (b):
>       
>       - In the OvmfPkgX64.dsc build (which is where (b) applies) we 
> simply
>         inherit the PcdDxeIplBuildPageTables|TRUE default from
>         "MdeModulePkg/MdeModulePkg.dec". Therefore we can set 
> PcdSetNxForStack
>         to TRUE.
>       
>       - In OvmfPkgIa32X64.dsc, page tables are built by default for DXE. 
> Hence
>         we can set PcdSetNxForStack to TRUE.
>       
>       - In OvmfPkgIa32.dsc, page tables used not to be necessary until 
> now.
>         After we set PcdSetNxForStack to TRUE in this patch, the DXE IPL 
> will
>         construct page tables even when it is built as part of 
> OvmfPkgIa32.dsc,
>         provided the (virtual) hardware supports both PAE mode and the XD 
> bit.
>       
>       Should this setting cause problems in a GPU (or other device) 
> passthru
>       scenario, with a UEFI_DRIVER in the PCI option rom attempting to 
> execute
>       code from the stack, the feature can be dynamically disabled on the 
> QEMU
>       command line, with "-cpu <MODEL>,-nx".
>       
>       Cc: Paolo Bonzini <pbonzini@redhat.com>
>       Cc: Jordan Justen <jordan.l.justen@intel.com>
>       Cc: "Zeng, Star" <star.zeng@intel.com>
>       Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
>       Contributed-under: TianoCore Contribution Agreement 1.0
>       Signed-off-by: Laszlo Ersek <lersek@redhat.com>
>       Reviewed-by: Star Zeng <star.zeng@intel.com>
>       
>       git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18360 6f
> 19259b-4bc3-4df7-8a09-765794883524
> 
> 
> For bisection revision-tuple graph see:
>    http://logs.test-lab.xenproject.org/osstest/results/bisect/ovmf/test
> -amd64-amd64-xl-qemuu-ovmf-amd64.debian-hvm-install.html
> Revision IDs in each graph node refer, respectively, to the Trees above.
> 
> ----------------------------------------
> Running cs-bisection-step --graph-out=/home/logs/results/bisect/ovmf/test
> -amd64-amd64-xl-qemuu-ovmf-amd64.debian-hvm-install --summary
> -out=tmp/61576.bisection-summary --basis-template=60869 -
> -blessings=real,real-bisect ovmf test-amd64-amd64-xl-qemuu-ovmf-amd64 
> debian-hvm-install
> Searching for failure / basis pass:
>  61299 fail [host=italia1] / 60904 ok.
> Failure / basis pass flights: 61299 / 60904
> (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: ovmf https://github.com/tianocore/edk2.git
> Tree: qemu git://xenbits.xen.org/staging/qemu-xen-unstable.git
> Tree: qemuu git://xenbits.xen.org/staging/qemu-upstream-unstable.git
> Tree: xen git://xenbits.xen.org/xen.git
> Latest 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 776566530b15a4241db00ac317659e5904ad453c 
> 5cdde31eacdd288359746019ad05cac8ed5d9f70 
> b05befcbea71a979509ce04f02929969a790c923 
> 801ab48e5556cb54f67e3cb57f077f47e8663ced
> Basis pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 218ea6c164525292239d5af891365676c6a18f2a 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b99717f62caeac08eea224a177cd28f047ac4b5
> Generating revisions with ./adhoc-revtuple-generator  git://xenbits.xen.o
> rg/linux-pvops.git#9b8b905951bde404f20a7bd4b37a5134f3484569
> -9b8b905951bde404f20a7bd4b37a5134f3484569 git://xenbits.xen.org/osstest/l
> inux-firmware.git#c530a75c1e6a472b0eb9558310b518f0dfcd8860
> -c530a75c1e6a472b0eb9558310b518f0dfcd8860 https://github.com/tianocore/ed
> k2.git#218ea6c164525292239d5af891365676c6a18f2a
> -776566530b15a4241db00ac317659e5904ad453c git://xenbits.xen.org/staging/q
> emu-xen-unstable.git#7f057440b31da38196e3398fd1b618fc36ad97d6
> -5cdde31eacdd288359746019ad05cac8ed5d9f70 git://xenbits.xen.org/staging/q
> emu-upstream-unstable.git#b05befcbea71a979509ce04f02929969a790c923
> -b05befcbea71a979509ce04f02929969a790c923 git://xenbits.xen.org/xen.git#7
> b99717f62caeac08eea224a177cd28f047ac4b5
> -801ab48e5556cb54f67e3cb57f077f47e8663ced
> Loaded 4005 nodes in revision graph
> Searching for test results:
>  60904 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 218ea6c164525292239d5af891365676c6a18f2a 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b99717f62caeac08eea224a177cd28f047ac4b5
>  60967 pass irrelevant
>  60968 fail irrelevant
>  61057 []
>  61081 fail irrelevant
>  61009 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 218ea6c164525292239d5af891365676c6a18f2a 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b99717f62caeac08eea224a177cd28f047ac4b5
>  61056 fail irrelevant
>  61062 []
>  61294 pass irrelevant
>  61296 pass irrelevant
>  61297 fail irrelevant
>  61277 pass irrelevant
>  61253 pass irrelevant
>  61246 fail irrelevant
>  61298 pass irrelevant
>  61287 pass irrelevant
>  61291 pass irrelevant
>  61300 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 218ea6c164525292239d5af891365676c6a18f2a 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b99717f62caeac08eea224a177cd28f047ac4b5
>  61299 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 776566530b15a4241db00ac317659e5904ad453c 
> 5cdde31eacdd288359746019ad05cac8ed5d9f70 
> b05befcbea71a979509ce04f02929969a790c923 
> 801ab48e5556cb54f67e3cb57f077f47e8663ced
>  61340 fail irrelevant
>  61539 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 92f62cfe0a74eaea750104249761f207e8755e88 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61528 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 2df2d35ab2a101e8152addb2a33598e24c2e1f83 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61518 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 776566530b15a4241db00ac317659e5904ad453c 
> 5cdde31eacdd288359746019ad05cac8ed5d9f70 
> b05befcbea71a979509ce04f02929969a790c923 
> 801ab48e5556cb54f67e3cb57f077f47e8663ced
>  61533 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> ead7cb12d5b0e23b55e47f38a8a0675958783668 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61567 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> ead7cb12d5b0e23b55e47f38a8a0675958783668 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61541 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 678226f632a7a369b36429afc9267f2774846ad8 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61546 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 0cd35d739ea8c0096af0db7d920010593db5779f 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61571 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 1a85139d9eac7f260a21a6ecb06a578a5255edf7 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61549 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 1a85139d9eac7f260a21a6ecb06a578a5255edf7 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61555 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> ead7cb12d5b0e23b55e47f38a8a0675958783668 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61576 fail 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> ead7cb12d5b0e23b55e47f38a8a0675958783668 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
>  61562 pass 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 1a85139d9eac7f260a21a6ecb06a578a5255edf7 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
> Searching for interesting versions
>  Result found: flight 60904 (pass), for basis pass
>  Result found: flight 61299 (fail), for basis failure
>  Repro found: flight 61300 (pass), for basis pass
>  Repro found: flight 61518 (fail), for basis failure
>  0 revisions at 9b8b905951bde404f20a7bd4b37a5134f3484569 
> c530a75c1e6a472b0eb9558310b518f0dfcd8860 
> 1a85139d9eac7f260a21a6ecb06a578a5255edf7 
> 7f057440b31da38196e3398fd1b618fc36ad97d6 
> b05befcbea71a979509ce04f02929969a790c923 
> 7b21214a3a8d8427bb1242f1cb5f138154ff5600
> No revisions left to test, checking graph state.
>  Result found: flight 61549 (pass), for last pass
>  Result found: flight 61555 (fail), for first failure
>  Repro found: flight 61562 (pass), for last pass
>  Repro found: flight 61567 (fail), for first failure
>  Repro found: flight 61571 (pass), for last pass
>  Repro found: flight 61576 (fail), for first failure
> 
> *** Found and reproduced problem changeset ***
> 
>   Bug is in tree:  ovmf https://github.com/tianocore/edk2.git
>   Bug introduced:  ead7cb12d5b0e23b55e47f38a8a0675958783668
>   Bug not present: 1a85139d9eac7f260a21a6ecb06a578a5255edf7
> 
> 
>   commit ead7cb12d5b0e23b55e47f38a8a0675958783668
>   Author: Laszlo Ersek <lersek@redhat.com>
>   Date:   Fri Aug 28 08:12:51 2015 +0000
>   
>       OvmfPkg: prevent code execution from DXE stack
>       
>       SVN rev 18166 ("MdeModulePkg DxeIpl: Add stack NX support") enables
>       platforms to request non-executable stack for the DXE phase, by 
> setting
>       PcdSetNxForStack to TRUE.
>       
>       The PCD defaults to FALSE, because:
>       
>       (a) A non-executable DXE stack is a new feature and causes changes 
> in
>           behavior. Some platform could rely on executing code from the 
> stack.
>       
>       (b) The code enabling NX in the DXE IPL PEIM enforces the
>       
>             PcdSetNxForStack ==> PcdDxeIplBuildPageTables
>       
>           implication for "64-bit PEI + 64-bit DXE" platforms, with a new
>           ASSERT(). Some platform might not comply with this requirement
>           immediately.
>       
>       Regarding (a), in none of the OVMF builds do we try to execute code 
> from
>       the stack.
>       
>       Regarding (b):
>       
>       - In the OvmfPkgX64.dsc build (which is where (b) applies) we 
> simply
>         inherit the PcdDxeIplBuildPageTables|TRUE default from
>         "MdeModulePkg/MdeModulePkg.dec". Therefore we can set 
> PcdSetNxForStack
>         to TRUE.
>       
>       - In OvmfPkgIa32X64.dsc, page tables are built by default for DXE. 
> Hence
>         we can set PcdSetNxForStack to TRUE.
>       
>       - In OvmfPkgIa32.dsc, page tables used not to be necessary until 
> now.
>         After we set PcdSetNxForStack to TRUE in this patch, the DXE IPL 
> will
>         construct page tables even when it is built as part of 
> OvmfPkgIa32.dsc,
>         provided the (virtual) hardware supports both PAE mode and the XD 
> bit.
>       
>       Should this setting cause problems in a GPU (or other device) 
> passthru
>       scenario, with a UEFI_DRIVER in the PCI option rom attempting to 
> execute
>       code from the stack, the feature can be dynamically disabled on the 
> QEMU
>       command line, with "-cpu <MODEL>,-nx".
>       
>       Cc: Paolo Bonzini <pbonzini@redhat.com>
>       Cc: Jordan Justen <jordan.l.justen@intel.com>
>       Cc: "Zeng, Star" <star.zeng@intel.com>
>       Suggested-by: Paolo Bonzini <pbonzini@redhat.com>
>       Contributed-under: TianoCore Contribution Agreement 1.0
>       Signed-off-by: Laszlo Ersek <lersek@redhat.com>
>       Reviewed-by: Star Zeng <star.zeng@intel.com>
>       
>       git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@18360 6f
> 19259b-4bc3-4df7-8a09-765794883524
> 
> Revision graph left in /home/logs/results/bisect/ovmf/test-amd64-amd64-xl
> -qemuu-ovmf-amd64.debian-hvm-install.{dot,ps,png,html}.
> ----------------------------------------
> 61576: tolerable ALL FAIL
> 
> flight 61576 ovmf real-bisect [real]
> http://logs.test-lab.xenproject.org/osstest/logs/61576/
> 
> Failures :-/ but no regressions.
> 
> Tests which did not succeed,
> including tests which could not be run:
>  test-amd64-amd64-xl-qemuu-ovmf-amd64 9 debian-hvm-install fail baseline 
> untested
> 
> 
> jobs:
>  test-amd64-amd64-xl-qemuu-ovmf-amd64                         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
> 

  reply	other threads:[~2015-09-08  8:41 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-08  2:48 [ovmf bisection] complete test-amd64-amd64-xl-qemuu-ovmf-amd64 osstest service owner
2015-09-08  8:41 ` Ian Campbell [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-10-18 10:27 osstest service owner
2022-12-17  3:37 osstest service owner
2021-06-10  9:39 osstest service owner
2020-12-11 23:57 osstest service owner
2019-01-20  3:38 osstest service owner
2017-02-24 12:19 osstest service owner
2016-04-07  5:46 osstest service owner
2016-02-19 18:12 osstest service owner
2015-02-19 12:31 xen.org

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1441701718.13570.6.camel@citrix.com \
    --to=ian.campbell@citrix.com \
    --cc=anthony.perard@citrix.com \
    --cc=osstest-admin@xenproject.org \
    --cc=wei.liu2@citrix.com \
    --cc=xen-devel@lists.xensource.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).