From mboxrd@z Thu Jan 1 00:00:00 1970 From: osstest service owner Subject: [qemu-mainline bisection] complete build-amd64-xsm Date: Mon, 01 May 2017 00:52:02 +0000 Message-ID: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============2762373123871114590==" Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: xen-devel@lists.xensource.com, osstest-admin@xenproject.org List-Id: xen-devel@lists.xenproject.org --===============2762373123871114590== Content-Type: text/plain branch xen-unstable xenbranch xen-unstable job build-amd64-xsm testid xen-build Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://git.qemu.org/qemu.git Tree: xen git://xenbits.xen.org/xen.git *** Found and reproduced problem changeset *** Bug is in tree: qemuu git://git.qemu.org/qemu.git Bug introduced: 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 Bug not present: fe491fa85c4634453b340b18046aae2eaf8147db Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/108060/ commit 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 Merge: fe491fa 28b99f4 Author: Peter Maydell Date: Wed Apr 26 10:22:31 2017 +0100 Merge remote-tracking branch 'remotes/sstabellini/tags/xen-20170421-v2-tag' into staging Xen 2017/04/21 + fix # gpg: Signature made Tue 25 Apr 2017 19:10:37 BST # gpg: using RSA key 0x894F8F4870E1AE90 # gpg: Good signature from "Stefano Stabellini " # gpg: aka "Stefano Stabellini " # Primary key fingerprint: D04E 33AB A51F 67BA 07D3 0AEA 894F 8F48 70E1 AE90 * remotes/sstabellini/tags/xen-20170421-v2-tag: (21 commits) move xen-mapcache.c to hw/i386/xen/ move xen-hvm.c to hw/i386/xen/ move xen-common.c to hw/xen/ add xen-9p-backend to MAINTAINERS under Xen xen/9pfs: build and register Xen 9pfs backend xen/9pfs: send responses back to the frontend xen/9pfs: implement in/out_iov_from_pdu and vmarshal/vunmarshal xen/9pfs: receive requests from the frontend xen/9pfs: connect to the frontend xen/9pfs: introduce Xen 9pfs backend 9p: introduce a type for the 9p header xen: import ring.h from xen configure: use pkg-config for obtaining xen version xen: additionally restrict xenforeignmemory operations xen: use libxendevice model to restrict operations xen: use 5 digit xen versions xen: use libxendevicemodel when available configure: detect presence of libxendevicemodel xen: create wrappers for all other uses of xc_hvm_XXX() functions xen: rename xen_modified_memory() to xen_hvm_modified_memory() ... Signed-off-by: Peter Maydell commit 28b99f473bda682385da944b0404aedbe11ea0dc Author: Anthony Xu Date: Wed Apr 5 16:21:31 2017 -0700 move xen-mapcache.c to hw/i386/xen/ move xen-mapcache.c to hw/i386/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit 93d43e7e11ad43f7aa1e648319385ecf289b1884 Author: Anthony Xu Date: Wed Apr 5 16:21:30 2017 -0700 move xen-hvm.c to hw/i386/xen/ move xen-hvm.c to hw/i386/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit 56e2cd24527867ac65aa86fc1820e5b700ccfa03 Author: Anthony Xu Date: Wed Apr 5 16:21:29 2017 -0700 move xen-common.c to hw/xen/ move xen-common.c to hw/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit d6a3f64ad3e8136758bc71e47f860974204c7a12 Author: Stefano Stabellini Date: Wed Mar 22 10:18:09 2017 -0700 add xen-9p-backend to MAINTAINERS under Xen Signed-off-by: Stefano Stabellini Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: groug@kaod.org CC: anthony.perard@citrix.com commit e737b6d5c3d69bde91c8cc554a8ce6d20e14feaa Author: Stefano Stabellini Date: Wed Mar 22 10:17:09 2017 -0700 xen/9pfs: build and register Xen 9pfs backend Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 4476e09e34d4257d2bfbdb70d106a154f42c928b Author: Stefano Stabellini Date: Wed Mar 22 10:16:09 2017 -0700 xen/9pfs: send responses back to the frontend Once a request is completed, xen_9pfs_push_and_notify gets called. In xen_9pfs_push_and_notify, update the indexes (data has already been copied to the sg by the common code) and send a notification to the frontend. Schedule the bottom-half to check if we already have any other requests pending. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 40a2389207fb1a7ee179a9eba1b2fe9a5584bbc3 Author: Stefano Stabellini Date: Wed Mar 22 10:16:06 2017 -0700 xen/9pfs: implement in/out_iov_from_pdu and vmarshal/vunmarshal Implement xen_9pfs_init_in/out_iov_from_pdu and xen_9pfs_pdu_vmarshal/vunmarshall by creating new sg pointing to the data on the ring. This is safe as we only handle one request per ring at any given time. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 47b70fb1e4b619c9d6de74776a6c7c8e5c7719ee Author: Stefano Stabellini Date: Wed Mar 22 10:16:03 2017 -0700 xen/9pfs: receive requests from the frontend Upon receiving an event channel notification from the frontend, schedule the bottom half. From the bottom half, read one request from the ring, create a pdu and call pdu_submit to handle it. For now, only handle one request per ring at a time. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit f23ef34a5dec56103e1348a622a6adf7c87c821f Author: Stefano Stabellini Date: Wed Mar 22 10:15:59 2017 -0700 xen/9pfs: connect to the frontend Write the limits of the backend to xenstore. Connect to the frontend. Upon connection, allocate the rings according to the protocol specification. Initialize a QEMUBH to schedule work upon receiving an event channel notification from the frontend. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit b37eeb020123d16a2ba10b16b9923088f727b005 Author: Stefano Stabellini Date: Tue Mar 21 13:51:34 2017 -0700 xen/9pfs: introduce Xen 9pfs backend Introduce the Xen 9pfs backend: add struct XenDevOps to register as a Xen backend and add struct V9fsTransport to register as v9fs transport. All functions are empty stubs for now. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit c9fb47e7d028b7c76655625880eb30666619f636 Author: Stefano Stabellini Date: Tue Mar 21 13:51:34 2017 -0700 9p: introduce a type for the 9p header Use the new type in virtio-9p-device. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz Reviewed-by: Philippe Mathieu-Daudé CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit f65eadb6394340ccf7d23533c7844b6e21c056e9 Author: Stefano Stabellini Date: Tue Mar 21 13:51:25 2017 -0700 xen: import ring.h from xen Do not use the ring.h header installed on the system. Instead, import the header into the QEMU codebase. This avoids problems when QEMU is built against a Xen version too old to provide all the ring macros. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com commit c1cdd9d5beb052b072c1f57ea634e3c52e9dc17b Author: Juergen Gross Date: Mon Mar 27 09:42:45 2017 +0200 configure: use pkg-config for obtaining xen version Instead of trying to guess the Xen version to use by compiling various test programs first just ask the system via pkg-config. Only if it can't return the version fall back to the test program scheme. If configure is being called with dedicated flags for the Xen libraries use those instead of the pkg-config output. This will avoid breaking an in-tree Xen build of an old Xen version while a new Xen version is installed on the build machine: pkg-config would pick up the installed Xen config files as the Xen tree wouldn't contain any of them. Signed-off-by: Juergen Gross Signed-off-by: Stefano Stabellini Tested-by: Paul Durrant Reviewed-by: Stefano Stabellini commit 14d015b6fcd0b94a1e0983f82fab3e144143a314 Author: Paul Durrant Date: Tue Mar 28 16:54:55 2017 +0100 xen: additionally restrict xenforeignmemory operations Commit f0f272baf3a7 "xen: use libxendevice model to restrict operations" added a command-line option (-xen-domid-restrict) to limit operations using the libxendevicemodel API to a specified domid. The commit also noted that the restriction would be extended to cover operations issued via other xen libraries by subsequent patches. My recent Xen patch [1] added a call to the xenforeignmemory API to allow it to be restricted. This patch now makes use of that new call when the -xen-domid-restrict option is passed. [1] http://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=5823d6eb Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini commit 1c599472b02783ee80691bfdaa465af9fbf25c8a Author: Paul Durrant Date: Wed Mar 22 09:39:15 2017 +0000 xen: use libxendevice model to restrict operations This patch adds a command-line option (-xen-domid-restrict) which will use the new libxendevicemodel API to restrict devicemodel [1] operations to the specified domid. (Such operations are not applicable to the xenpv machine type). This patch also adds a tracepoint to allow successful enabling of the restriction to be monitored. [1] I.e. operations issued by libxendevicemodel. Operation issued by other xen libraries (e.g. libxenforeignmemory) are currently still unrestricted but this will be rectified by subsequent patches. Signed-off-by: Paul Durrant Reviewed-by: Stefano Stabellini commit f1167ee684279bffabe7bb3ab23eff87577fe427 Author: Juergen Gross Date: Thu Mar 16 15:19:52 2017 +0100 xen: use 5 digit xen versions Today qemu is using e.g. the value 480 for Xen version 4.8.0. As some Xen version tests are using ">" relations this scheme will lead to problems when Xen version 4.10.0 is being reached. Instead of the 3 digit schem use a 5 digit scheme (e.g. 40800 for version 4.8.0). Signed-off-by: Juergen Gross Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini commit d655f34e6d6a68f64e885fa85295e0c7a31ce846 Author: Paul Durrant Date: Tue Mar 7 10:55:34 2017 +0000 xen: use libxendevicemodel when available This patch modifies the wrapper functions in xen_common.h to use the new xendevicemodel interface if it is available along with compatibility code to use the old libxenctrl interface if it is not. Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit da8090ccb7735aed5a46ce27dfbe8486cfce61f5 Author: Paul Durrant Date: Tue Mar 7 10:55:33 2017 +0000 configure: detect presence of libxendevicemodel This patch adds code in configure to set CONFIG_XEN_CTRL_INTERFACE_VERSION to a new value of 490 if libxendevicemodel is present in the build environment. Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 8f25e7544150abd4bfd4ef35fe152c049b5ea5e7 Author: Paul Durrant Date: Tue Mar 7 10:55:32 2017 +0000 xen: create wrappers for all other uses of xc_hvm_XXX() functions This patch creates inline wrapper functions in xen_common.h for all open coded calls to xc_hvm_XXX() functions outside of xen_common.h so that use of xen_xc can be made implicit. This again is in preparation for the move to using libxendevicemodel. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 5100afb5f59906f63490c050d2eee578b9ba2b3d Author: Paul Durrant Date: Tue Mar 7 10:55:31 2017 +0000 xen: rename xen_modified_memory() to xen_hvm_modified_memory() This patch is a purely cosmetic change that avoids a name collision in a subsequent patch. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 260cabed718c4d3137553a4a98de268b0fb166b7 Author: Paul Durrant Date: Tue Mar 7 10:55:30 2017 +0000 xen: make use of xen_xc implicit in xen_common.h inlines Doing this will make the transition to using the new libxendevicemodel interface less intrusive on the callers of these functions, since using the new library will require a change of handle. NOTE: The patch also moves the 'externs' for xen_xc and xen_fmem from xen_backend.h to xen_common.h, and the declarations from xen_backend.c to xen-common.c, which is where they belong. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini For bisection revision-tuple graph see: http://logs.test-lab.xenproject.org/osstest/results/bisect/qemu-mainline/build-amd64-xsm.xen-build.html Revision IDs in each graph node refer, respectively, to the Trees above. ---------------------------------------- Running cs-bisection-step --graph-out=/home/logs/results/bisect/qemu-mainline/build-amd64-xsm.xen-build --summary-out=tmp/108060.bisection-summary --basis-template=107636 --blessings=real,real-bisect qemu-mainline build-amd64-xsm xen-build Searching for failure / basis pass: 108044 fail [host=chardonnay1] / 107644 [host=godello1] 107636 [host=godello0] 107610 [host=godello1] 107598 [host=godello0] 107580 [host=pinot0] 107572 [host=godello1] 107557 [host=godello1] 107542 [host=godello1] 107531 [host=godello0] 107501 ok. Failure / basis pass flights: 108044 / 107501 (tree with no url: minios) (tree with no url: ovmf) (tree with no url: seabios) Tree: qemu git://xenbits.xen.org/qemu-xen-traditional.git Tree: qemuu git://git.qemu.org/qemu.git Tree: xen git://xenbits.xen.org/xen.git Latest 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 Basis pass 8051789e982499050680a26febeada7467e18a8d 9c6b899f7a46893ab3b671e341a2234e9c0c060e e412c03be25dee8202a440b973561afd8ab6d868 Generating revisions with ./adhoc-revtuple-generator git://xenbits.xen.org/qemu-xen-traditional.git#8051789e982499050680a26febeada7467e18a8d-8051789e982499050680a26febeada7467e18a8d git://git.qemu.org/qemu.git#9c6b899f7a46893ab3b671e341a2234e9c0c060e-81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 git://xenbits.xen.org/xen.git#e412c03be25dee8202a440b973561afd8ab6d868-0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 Loaded 18450 nodes in revision graph Searching for test results: 107501 pass 8051789e982499050680a26febeada7467e18a8d 9c6b899f7a46893ab3b671e341a2234e9c0c060e e412c03be25dee8202a440b973561afd8ab6d868 107531 [host=godello0] 107542 [host=godello1] 107557 [host=godello1] 107572 [host=godello1] 107598 [host=godello0] 107609 [host=godello1] 107611 [host=pinot0] 107580 [host=pinot0] 107610 [host=godello1] 107636 [host=godello0] 107644 [host=godello1] 107736 fail irrelevant 107777 fail irrelevant 107758 fail irrelevant 107788 fail irrelevant 107808 fail irrelevant 107841 fail irrelevant 107826 fail irrelevant 107884 fail irrelevant 107911 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 107936 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108005 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108024 pass 8051789e982499050680a26febeada7467e18a8d 71cd4dace9abf51469cfbf6db622124993955f78 8829d12ac0f9e3f7b01f276cd966c5a39497da92 107986 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108027 pass 8051789e982499050680a26febeada7467e18a8d eab1e53cacfb1d877317d5e7b416ddb43858d92e 99704f26360ee8d4f85081c6c50ce64f47961f6d 108034 pass 8051789e982499050680a26febeada7467e18a8d 07ed50a2bb66a4d5ab2d7e54a5dfc4b618cccacc 68e9e96953f7aad1bb3b2a1c15c26bbd94897346 108020 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108018 pass 8051789e982499050680a26febeada7467e18a8d 9c6b899f7a46893ab3b671e341a2234e9c0c060e e412c03be25dee8202a440b973561afd8ab6d868 108023 fail 8051789e982499050680a26febeada7467e18a8d 78f86a2b7c6b5c490a612729816473485d7ac570 cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108044 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108025 pass 8051789e982499050680a26febeada7467e18a8d 4ba967ad7454c08d7e01b047d34d0c3d98f2a10d 8829d12ac0f9e3f7b01f276cd966c5a39497da92 108033 pass 8051789e982499050680a26febeada7467e18a8d af7ec403b213544667cbc275926fa23b54e0cb02 68e9e96953f7aad1bb3b2a1c15c26bbd94897346 108032 pass 8051789e982499050680a26febeada7467e18a8d b4c963fa82ff5c0d7a991acb7e72e33f12eed1d4 68e9e96953f7aad1bb3b2a1c15c26bbd94897346 108030 pass 8051789e982499050680a26febeada7467e18a8d 9eb2575e6c2cb902db88eb5539c66d32a30a94cf 99704f26360ee8d4f85081c6c50ce64f47961f6d 108031 pass 8051789e982499050680a26febeada7467e18a8d 2cf9953beebd194a432ebd567399807d9b1f6a4d 8829d12ac0f9e3f7b01f276cd966c5a39497da92 108039 pass 8051789e982499050680a26febeada7467e18a8d 32c7e0ab755745e961f1772e95cac381cc68769d 07abf27c0fcb53f1bdba58ef1748af36a6f5cb6c 108040 fail 8051789e982499050680a26febeada7467e18a8d 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108028 fail 8051789e982499050680a26febeada7467e18a8d 81b2d5ceb0cfb4cdc2163492e3169ed714b0cda9 0a5370ee1f9808fbb16bb03d7f349921cf73a2d4 108041 pass 8051789e982499050680a26febeada7467e18a8d 0fc8aec7de64f2bf83a274a2a38b938ce03425d2 8829d12ac0f9e3f7b01f276cd966c5a39497da92 108043 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db a9404c0e530554078300d7f2a1c9858f3407c7ae 108045 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db 9182835740ac37cf5295b15eb47058f39fc14c8f 108047 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db 144aec4140515c53bb1676df71a469f3e285c557 108049 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108053 fail 8051789e982499050680a26febeada7467e18a8d 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108054 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108056 fail 8051789e982499050680a26febeada7467e18a8d 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108057 pass 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db cd91ab08eaa23409440ef6b4f5ad6e651b629c3b 108060 fail 8051789e982499050680a26febeada7467e18a8d 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 cd91ab08eaa23409440ef6b4f5ad6e651b629c3b Searching for interesting versions Result found: flight 107501 (pass), for basis pass Result found: flight 107911 (fail), for basis failure Repro found: flight 108018 (pass), for basis pass Repro found: flight 108020 (fail), for basis failure 0 revisions at 8051789e982499050680a26febeada7467e18a8d fe491fa85c4634453b340b18046aae2eaf8147db cd91ab08eaa23409440ef6b4f5ad6e651b629c3b No revisions left to test, checking graph state. Result found: flight 108049 (pass), for last pass Result found: flight 108053 (fail), for first failure Repro found: flight 108054 (pass), for last pass Repro found: flight 108056 (fail), for first failure Repro found: flight 108057 (pass), for last pass Repro found: flight 108060 (fail), for first failure *** Found and reproduced problem changeset *** Bug is in tree: qemuu git://git.qemu.org/qemu.git Bug introduced: 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 Bug not present: fe491fa85c4634453b340b18046aae2eaf8147db Last fail repro: http://logs.test-lab.xenproject.org/osstest/logs/108060/ commit 52e94ea5de3ed9d7ddf1b0e5fc6ff7c2807ae711 Merge: fe491fa 28b99f4 Author: Peter Maydell Date: Wed Apr 26 10:22:31 2017 +0100 Merge remote-tracking branch 'remotes/sstabellini/tags/xen-20170421-v2-tag' into staging Xen 2017/04/21 + fix # gpg: Signature made Tue 25 Apr 2017 19:10:37 BST # gpg: using RSA key 0x894F8F4870E1AE90 # gpg: Good signature from "Stefano Stabellini " # gpg: aka "Stefano Stabellini " # Primary key fingerprint: D04E 33AB A51F 67BA 07D3 0AEA 894F 8F48 70E1 AE90 * remotes/sstabellini/tags/xen-20170421-v2-tag: (21 commits) move xen-mapcache.c to hw/i386/xen/ move xen-hvm.c to hw/i386/xen/ move xen-common.c to hw/xen/ add xen-9p-backend to MAINTAINERS under Xen xen/9pfs: build and register Xen 9pfs backend xen/9pfs: send responses back to the frontend xen/9pfs: implement in/out_iov_from_pdu and vmarshal/vunmarshal xen/9pfs: receive requests from the frontend xen/9pfs: connect to the frontend xen/9pfs: introduce Xen 9pfs backend 9p: introduce a type for the 9p header xen: import ring.h from xen configure: use pkg-config for obtaining xen version xen: additionally restrict xenforeignmemory operations xen: use libxendevice model to restrict operations xen: use 5 digit xen versions xen: use libxendevicemodel when available configure: detect presence of libxendevicemodel xen: create wrappers for all other uses of xc_hvm_XXX() functions xen: rename xen_modified_memory() to xen_hvm_modified_memory() ... Signed-off-by: Peter Maydell commit 28b99f473bda682385da944b0404aedbe11ea0dc Author: Anthony Xu Date: Wed Apr 5 16:21:31 2017 -0700 move xen-mapcache.c to hw/i386/xen/ move xen-mapcache.c to hw/i386/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit 93d43e7e11ad43f7aa1e648319385ecf289b1884 Author: Anthony Xu Date: Wed Apr 5 16:21:30 2017 -0700 move xen-hvm.c to hw/i386/xen/ move xen-hvm.c to hw/i386/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit 56e2cd24527867ac65aa86fc1820e5b700ccfa03 Author: Anthony Xu Date: Wed Apr 5 16:21:29 2017 -0700 move xen-common.c to hw/xen/ move xen-common.c to hw/xen/ Signed-off -by: Anthony Xu Reviewed-by: Stefano Stabellini commit d6a3f64ad3e8136758bc71e47f860974204c7a12 Author: Stefano Stabellini Date: Wed Mar 22 10:18:09 2017 -0700 add xen-9p-backend to MAINTAINERS under Xen Signed-off-by: Stefano Stabellini Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: groug@kaod.org CC: anthony.perard@citrix.com commit e737b6d5c3d69bde91c8cc554a8ce6d20e14feaa Author: Stefano Stabellini Date: Wed Mar 22 10:17:09 2017 -0700 xen/9pfs: build and register Xen 9pfs backend Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 4476e09e34d4257d2bfbdb70d106a154f42c928b Author: Stefano Stabellini Date: Wed Mar 22 10:16:09 2017 -0700 xen/9pfs: send responses back to the frontend Once a request is completed, xen_9pfs_push_and_notify gets called. In xen_9pfs_push_and_notify, update the indexes (data has already been copied to the sg by the common code) and send a notification to the frontend. Schedule the bottom-half to check if we already have any other requests pending. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 40a2389207fb1a7ee179a9eba1b2fe9a5584bbc3 Author: Stefano Stabellini Date: Wed Mar 22 10:16:06 2017 -0700 xen/9pfs: implement in/out_iov_from_pdu and vmarshal/vunmarshal Implement xen_9pfs_init_in/out_iov_from_pdu and xen_9pfs_pdu_vmarshal/vunmarshall by creating new sg pointing to the data on the ring. This is safe as we only handle one request per ring at any given time. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit 47b70fb1e4b619c9d6de74776a6c7c8e5c7719ee Author: Stefano Stabellini Date: Wed Mar 22 10:16:03 2017 -0700 xen/9pfs: receive requests from the frontend Upon receiving an event channel notification from the frontend, schedule the bottom half. From the bottom half, read one request from the ring, create a pdu and call pdu_submit to handle it. For now, only handle one request per ring at a time. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit f23ef34a5dec56103e1348a622a6adf7c87c821f Author: Stefano Stabellini Date: Wed Mar 22 10:15:59 2017 -0700 xen/9pfs: connect to the frontend Write the limits of the backend to xenstore. Connect to the frontend. Upon connection, allocate the rings according to the protocol specification. Initialize a QEMUBH to schedule work upon receiving an event channel notification from the frontend. Signed-off-by: Stefano Stabellini CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit b37eeb020123d16a2ba10b16b9923088f727b005 Author: Stefano Stabellini Date: Tue Mar 21 13:51:34 2017 -0700 xen/9pfs: introduce Xen 9pfs backend Introduce the Xen 9pfs backend: add struct XenDevOps to register as a Xen backend and add struct V9fsTransport to register as v9fs transport. All functions are empty stubs for now. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit c9fb47e7d028b7c76655625880eb30666619f636 Author: Stefano Stabellini Date: Tue Mar 21 13:51:34 2017 -0700 9p: introduce a type for the 9p header Use the new type in virtio-9p-device. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz Reviewed-by: Philippe Mathieu-Daudé CC: anthony.perard@citrix.com CC: jgross@suse.com CC: Aneesh Kumar K.V CC: Greg Kurz commit f65eadb6394340ccf7d23533c7844b6e21c056e9 Author: Stefano Stabellini Date: Tue Mar 21 13:51:25 2017 -0700 xen: import ring.h from xen Do not use the ring.h header installed on the system. Instead, import the header into the QEMU codebase. This avoids problems when QEMU is built against a Xen version too old to provide all the ring macros. Signed-off-by: Stefano Stabellini Reviewed-by: Greg Kurz CC: anthony.perard@citrix.com CC: jgross@suse.com commit c1cdd9d5beb052b072c1f57ea634e3c52e9dc17b Author: Juergen Gross Date: Mon Mar 27 09:42:45 2017 +0200 configure: use pkg-config for obtaining xen version Instead of trying to guess the Xen version to use by compiling various test programs first just ask the system via pkg-config. Only if it can't return the version fall back to the test program scheme. If configure is being called with dedicated flags for the Xen libraries use those instead of the pkg-config output. This will avoid breaking an in-tree Xen build of an old Xen version while a new Xen version is installed on the build machine: pkg-config would pick up the installed Xen config files as the Xen tree wouldn't contain any of them. Signed-off-by: Juergen Gross Signed-off-by: Stefano Stabellini Tested-by: Paul Durrant Reviewed-by: Stefano Stabellini commit 14d015b6fcd0b94a1e0983f82fab3e144143a314 Author: Paul Durrant Date: Tue Mar 28 16:54:55 2017 +0100 xen: additionally restrict xenforeignmemory operations Commit f0f272baf3a7 "xen: use libxendevice model to restrict operations" added a command-line option (-xen-domid-restrict) to limit operations using the libxendevicemodel API to a specified domid. The commit also noted that the restriction would be extended to cover operations issued via other xen libraries by subsequent patches. My recent Xen patch [1] added a call to the xenforeignmemory API to allow it to be restricted. This patch now makes use of that new call when the -xen-domid-restrict option is passed. [1] http://xenbits.xen.org/gitweb/?p=xen.git;a=commit;h=5823d6eb Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini commit 1c599472b02783ee80691bfdaa465af9fbf25c8a Author: Paul Durrant Date: Wed Mar 22 09:39:15 2017 +0000 xen: use libxendevice model to restrict operations This patch adds a command-line option (-xen-domid-restrict) which will use the new libxendevicemodel API to restrict devicemodel [1] operations to the specified domid. (Such operations are not applicable to the xenpv machine type). This patch also adds a tracepoint to allow successful enabling of the restriction to be monitored. [1] I.e. operations issued by libxendevicemodel. Operation issued by other xen libraries (e.g. libxenforeignmemory) are currently still unrestricted but this will be rectified by subsequent patches. Signed-off-by: Paul Durrant Reviewed-by: Stefano Stabellini commit f1167ee684279bffabe7bb3ab23eff87577fe427 Author: Juergen Gross Date: Thu Mar 16 15:19:52 2017 +0100 xen: use 5 digit xen versions Today qemu is using e.g. the value 480 for Xen version 4.8.0. As some Xen version tests are using ">" relations this scheme will lead to problems when Xen version 4.10.0 is being reached. Instead of the 3 digit schem use a 5 digit scheme (e.g. 40800 for version 4.8.0). Signed-off-by: Juergen Gross Signed-off-by: Stefano Stabellini Reviewed-by: Stefano Stabellini commit d655f34e6d6a68f64e885fa85295e0c7a31ce846 Author: Paul Durrant Date: Tue Mar 7 10:55:34 2017 +0000 xen: use libxendevicemodel when available This patch modifies the wrapper functions in xen_common.h to use the new xendevicemodel interface if it is available along with compatibility code to use the old libxenctrl interface if it is not. Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit da8090ccb7735aed5a46ce27dfbe8486cfce61f5 Author: Paul Durrant Date: Tue Mar 7 10:55:33 2017 +0000 configure: detect presence of libxendevicemodel This patch adds code in configure to set CONFIG_XEN_CTRL_INTERFACE_VERSION to a new value of 490 if libxendevicemodel is present in the build environment. Signed-off-by: Paul Durrant Signed-off-by: Stefano Stabellini Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 8f25e7544150abd4bfd4ef35fe152c049b5ea5e7 Author: Paul Durrant Date: Tue Mar 7 10:55:32 2017 +0000 xen: create wrappers for all other uses of xc_hvm_XXX() functions This patch creates inline wrapper functions in xen_common.h for all open coded calls to xc_hvm_XXX() functions outside of xen_common.h so that use of xen_xc can be made implicit. This again is in preparation for the move to using libxendevicemodel. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 5100afb5f59906f63490c050d2eee578b9ba2b3d Author: Paul Durrant Date: Tue Mar 7 10:55:31 2017 +0000 xen: rename xen_modified_memory() to xen_hvm_modified_memory() This patch is a purely cosmetic change that avoids a name collision in a subsequent patch. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini commit 260cabed718c4d3137553a4a98de268b0fb166b7 Author: Paul Durrant Date: Tue Mar 7 10:55:30 2017 +0000 xen: make use of xen_xc implicit in xen_common.h inlines Doing this will make the transition to using the new libxendevicemodel interface less intrusive on the callers of these functions, since using the new library will require a change of handle. NOTE: The patch also moves the 'externs' for xen_xc and xen_fmem from xen_backend.h to xen_common.h, and the declarations from xen_backend.c to xen-common.c, which is where they belong. Signed-off-by: Paul Durrant Reviewed-by: Anthony Perard Reviewed-by: Stefano Stabellini Revision graph left in /home/logs/results/bisect/qemu-mainline/build-amd64-xsm.xen-build.{dot,ps,png,html,svg}. ---------------------------------------- 108060: tolerable ALL FAIL flight 108060 qemu-mainline real-bisect [real] http://logs.test-lab.xenproject.org/osstest/logs/108060/ Failures :-/ but no regressions. Tests which did not succeed, including tests which could not be run: build-amd64-xsm 5 xen-build fail baseline untested jobs: build-amd64-xsm 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 --===============2762373123871114590== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRldmVs IG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwczovL2xpc3RzLnhlbi5v cmcveGVuLWRldmVsCg== --===============2762373123871114590==--