Re: [Xen-devel] [PATCH] x86: fix efi.lds dependency generation

2018-11-19 Thread Jan Beulich
>>> On 18.11.18 at 14:14, wrote: > RANDCONFIG builds discover efi.lds is not updated when autogenerated > headers are updated. > > Upon inspection, the generated .d file contains xen.lds.o as target, > not the once thought efi.lds.o. That's because gcc disregards the > output object name specifie

Re: [Xen-devel] [PATCH v3 5/5] xen/keyhandler: Drop keyhandler_scratch

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 18:45, wrote: > With almost all users of keyhandler_scratch gone, clean up the 3 remaining > users and drop the buffer. > > Signed-off-by: Andrew Cooper > Reviewed-by: Wei Liu Reviewed-by: Jan Beulich ___ Xen-devel mailing list

Re: [Xen-devel] [PATCH v4 1/5] vpci: fix updating the command register

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 15:32, wrote: > On Fri, Nov 16, 2018 at 05:00:29AM -0700, Jan Beulich wrote: >> >>> On 14.11.18 at 12:57, wrote: >> > @@ -413,7 +412,7 @@ static void rom_write(const struct pci_dev *pdev, >> > unsigned int reg, >> > header->rom_enabled = new_enabled; >> > pci

Re: [Xen-devel] [PATCH v4 2/5] vpci: fix deferral of long operations

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 15:57, wrote: > On Fri, Nov 16, 2018 at 05:11:39AM -0700, Jan Beulich wrote: >> >>> On 14.11.18 at 12:57, wrote: >> > @@ -182,6 +185,7 @@ static void defer_map(struct domain *d, struct pci_dev >> > *pdev, >> > curr->vpci.mem = mem; >> > curr->vpci.cmd = cmd; >> >

Re: [Xen-devel] [PATCH 0/4] x86: Drop PVRDTSCP and fix MSR_TSC_AUX handling for guests

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 18:43, wrote: > On 16/11/2018 10:11, Jan Beulich wrote: > On 15.11.18 at 22:47, wrote: >>> Boris has confirmed that noone appears to be using PVRDTSCP any more, and in >>> the decade since it was introduced, guest kernel / hardware support has >>> provided a better alternat

[Xen-devel] [ovmf test] 130483: regressions - FAIL

2018-11-19 Thread osstest service owner
flight 130483 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/130483/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-buildfail REGR. vs. 129475 build-amd64-xsm

Re: [Xen-devel] Guest soft lockups with "xen: make xen_qlock_wait() nestable"

2018-11-19 Thread David Woodhouse
On Mon, 2018-11-19 at 08:05 +0100, Juergen Gross wrote: > On 15/11/2018 00:22, David Woodhouse wrote: > > On Thu, 2018-11-08 at 11:18 +0100, Juergen Gross wrote: > > > Oh, sorry. Of course it does. Dereferencing a percpu variable > > > directly can't work. How silly of me. > > > > > > The attached

[Xen-devel] [xen-4.7-testing test] 130385: trouble: blocked/broken/fail/pass

2018-11-19 Thread osstest service owner
flight 130385 xen-4.7-testing real [real] http://logs.test-lab.xenproject.org/osstest/logs/130385/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvopsbroken build-arm64-xsm

Re: [Xen-devel] Guest soft lockups with "xen: make xen_qlock_wait() nestable"

2018-11-19 Thread Juergen Gross
On 19/11/2018 10:39, David Woodhouse wrote: > On Mon, 2018-11-19 at 08:05 +0100, Juergen Gross wrote: >> On 15/11/2018 00:22, David Woodhouse wrote: >>> On Thu, 2018-11-08 at 11:18 +0100, Juergen Gross wrote: Oh, sorry. Of course it does. Dereferencing a percpu variable directly can't wor

Re: [Xen-devel] [PATCH 5/9] drm/xen/xen_drm_front_gem.c: Convert to use vm_insert_range

2018-11-19 Thread Oleksandr Andrushchenko
On 11/15/18 5:49 PM, Souptick Joarder wrote: Convert to use vm_insert_range() to map range of kernel memory to user vma. Signed-off-by: Souptick Joarder Reviewed-by: Matthew Wilcox --- drivers/gpu/drm/xen/xen_drm_front_gem.c | 20 ++-- 1 file changed, 6 insertions(+), 14 del

[Xen-devel] [PATCH v5 00/47] x86emul: fair parts of AVX512 support

2018-11-19 Thread Jan Beulich
01: introduce IMPOSSIBLE() 02: support basic AVX512 moves 03: test for correct EVEX Disp8 scaling 04: also allow running the 32-bit harness on a 64-bit distro 05: use AVX512 logic for emulating V{,P}MASKMOV* 06: support AVX512F legacy-equivalent arithmetic FP insns 07: support AVX512DQ logic FP ins

[Xen-devel] [PATCH v5 01/47] x86emul: introduce IMPOSSIBLE()

2018-11-19 Thread Jan Beulich
This abstracts away the debug/release coverage using both ASSERT_UNREACHABLE() and a return value of X86EMUL_UNHANDLEABLE. Signed-off-by: Jan Beulich --- v5: New. --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -1017,6 +1017,15 @@ do { if ( rc )

[Xen-devel] [PATCH v5 02/47] x86emul: support basic AVX512 moves

2018-11-19 Thread Jan Beulich
Note: SDM Vol 2 rev 067 is not really consistent about EVEX.L'L for LIG insns - the only place where this is made explicit is a table in the section titled "Vector Length Orthogonality": While they tolerate 0, 1, and 2, a value of 3 uniformly leads to #UD. Signed-off-by: Jan Beul

[Xen-devel] [PATCH v5 03/47] x86emul: test for correct EVEX Disp8 scaling

2018-11-19 Thread Jan Beulich
Besides the already existing tests (which are going to be extended once respective ISA extension support is complete), let's also ensure for every individual insn that their Disp8 scaling (and memory access width) are correct. Signed-off-by: Jan Beulich --- v5: Fix upper bound of first access che

[Xen-devel] [PATCH v5 04/47] x86emul: also allow running the 32-bit harness on a 64-bit distro

2018-11-19 Thread Jan Beulich
In order to be able to verify the 32-bit variant builds and runs, introduce a respective target (and the necessary other adjustments). Signed-off-by: Jan Beulich --- v5: Use vpath directive instead of VPATH variable. Use ?= instead of ifeq(). Don't have clean32 depend on generated headers. Re

[Xen-devel] [PATCH v5 05/47] x86emul: use AVX512 logic for emulating V{, P}MASKMOV*

2018-11-19 Thread Jan Beulich
The more generic AVX512 implementation allows quite a bit of insn- specific code to be dropped/shared. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -439,8 +439,8 @@ static const struct ext0f38_tab

[Xen-devel] [PATCH v5 06/47] x86emul: support AVX512F legacy-equivalent arithmetic FP insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -104,6 +104,10 @@ enum esz { INSN_SFP(m, sp, o) static const struct test avx512f_all[] = { +INSN_FP(add, 0f, 58), +

[Xen-devel] [PATCH v1 1/8] mm: balloon: update comment about isolation/migration/compaction

2018-11-19 Thread David Hildenbrand
Commit b1123ea6d3b3 ("mm: balloon: use general non-lru movable page feature") reworked balloon handling to make use of the general non-lru movable page feature. The big comment block in balloon_compaction.h contains quite some outdated information. Let's fix this. Cc: Andrew Morton Cc: Matthew Wi

[Xen-devel] [PATCH v1 2/8] mm: convert PG_balloon to PG_offline

2018-11-19 Thread David Hildenbrand
PG_balloon was introduced to implement page migration/compaction for pages inflated in virtio-balloon. Nowadays, it is only a marker that a page is part of virtio-balloon and therefore logically offline. We also want to make use of this flag in other balloon drivers - for inflated pages or when on

[Xen-devel] [PATCH v1 5/8] hv_balloon: mark inflated pages PG_offline

2018-11-19 Thread David Hildenbrand
Mark inflated and never onlined pages PG_offline, to tell the world that the content is stale and should not be dumped. Cc: "K. Y. Srinivasan" Cc: Haiyang Zhang Cc: Stephen Hemminger Cc: Kairui Song Cc: Vitaly Kuznetsov Cc: Andrew Morton Cc: Matthew Wilcox Cc: Michal Hocko Cc: "Michael S.

[Xen-devel] [PATCH v5 08/47] x86emul: support basic AVX512F FP compare insns

2018-11-19 Thread Jan Beulich
V{,U}COMIS{S,D} to follow later. Also correct the AVX counterpart's comment. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v5: Adjust title. v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -105,6 +105,7 @@ enum esz { static const

[Xen-devel] [PATCH v1 7/8] PM / Hibernate: use pfn_to_online_page()

2018-11-19 Thread David Hildenbrand
Let's use pfn_to_online_page() instead of pfn_to_page() when checking for saveable pages to not save/restore offline memory sections. Cc: "Rafael J. Wysocki" Cc: Pavel Machek Cc: Len Brown Cc: Andrew Morton Cc: Matthew Wilcox Cc: Michal Hocko Cc: "Michael S. Tsirkin" Suggested-by: Michal Ho

[Xen-devel] [PATCH v1 4/8] xen/balloon: mark inflated pages PG_offline

2018-11-19 Thread David Hildenbrand
Mark inflated and never onlined pages PG_offline, to tell the world that the content is stale and should not be dumped. Cc: Boris Ostrovsky Cc: Juergen Gross Cc: Stefano Stabellini Cc: Andrew Morton Cc: Matthew Wilcox Cc: Michal Hocko Cc: "Michael S. Tsirkin" Signed-off-by: David Hildenbran

[Xen-devel] [PATCH v1 6/8] vmw_balloon: mark inflated pages PG_offline

2018-11-19 Thread David Hildenbrand
Mark inflated and never onlined pages PG_offline, to tell the world that the content is stale and should not be dumped. Cc: Xavier Deguillard Cc: Nadav Amit Cc: Arnd Bergmann Cc: Greg Kroah-Hartman Cc: Julien Freche Cc: Andrew Morton Cc: Matthew Wilcox Cc: Michal Hocko Cc: "Michael S. Tsir

[Xen-devel] [PATCH v1 3/8] kexec: export PG_offline to VMCOREINFO

2018-11-19 Thread David Hildenbrand
Right now, pages inflated as part of a balloon driver will be dumped by dump tools like makedumpfile. While XEN is able to check in the crash kernel whether a certain pfn is actuall backed by memory in the hypervisor (see xen_oldmem_pfn_is_ram) and optimize this case, dumps of other balloon inflate

[Xen-devel] [PATCH v1 0/8] mm/kdump: allow to exclude pages that are logically offline

2018-11-19 Thread David Hildenbrand
Right now, pages inflated as part of a balloon driver will be dumped by dump tools like makedumpfile. While XEN is able to check in the crash kernel whether a certain pfn is actuall backed by memory in the hypervisor (see xen_oldmem_pfn_is_ram) and optimize this case, dumps of virtio-balloon, hv-ba

[Xen-devel] [PATCH v5 07/47] x86emul: support AVX512DQ logic FP insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -144,6 +144,13 @@ static const struct test avx512bw_all[] INSN(movdqu16,f2, 0f, 7f,vl,w, vl), }; +static const struct t

[Xen-devel] [PATCH v5 09/47] x86emul: support AVX512F misc legacy-equivalent FP insns

2018-11-19 Thread Jan Beulich
Also correct an AVX counterpart's comment. Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -127,8 +127,11 @@ static const struct test avx512f_all[] = INSN_PFP_NB(movu,0f, 10),

[Xen-devel] [PATCH v1 8/8] PM / Hibernate: exclude all PageOffline() pages

2018-11-19 Thread David Hildenbrand
The content of pages that are marked PG_offline is not of interest (e.g. inflated by a balloon driver), let's skip these pages. Cc: "Rafael J. Wysocki" Cc: Pavel Machek Cc: Len Brown Cc: Andrew Morton Cc: Matthew Wilcox Cc: Michal Hocko Cc: "Michael S. Tsirkin" Acked-by: Pavel Machek Signe

[Xen-devel] [ovmf test] 130491: regressions - FAIL

2018-11-19 Thread osstest service owner
flight 130491 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/130491/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-amd64 6 xen-buildfail REGR. vs. 129475 build-amd64-xsm

[Xen-devel] [PATCH v5 10/47] x86emul: support AVX512F fused-multiply-add insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -107,6 +107,36 @@ static const struct test avx512f_all[] = INSN_FP(add, 0f, 58), INSN_FP(cmp, 0f, c2),

[Xen-devel] [PATCH v5 11/47] x86emul: support AVX512F legacy-equivalent logic insns

2018-11-19 Thread Jan Beulich
Plus vpternlog{d,q} as being extensively used by the compiler, in order to facilitate test enabling in the harness as soon as possible. Also the twobyte_table[] entries for a few more insns get their .d8s field set right away, in order to not split and later re-combine the groups. Signed-off-by: J

[Xen-devel] [PATCH v1] makedumpfile: exclude pages that are logically offline

2018-11-19 Thread David Hildenbrand
Linux marks pages that are logically offline via a page flag (map count). Such pages e.g. include pages infated as part of a balloon driver or pages that were not actually onlined when onlining the whole section. While the hypervisor usually allows to read such inflated memory, we basically read a

[Xen-devel] [PATCH v5 12/47] x86emul: support AVX512{F, DQ} FP broadcast insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v5: Use IMPOSSIBLE() to guard against division by zero. v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -105,6 +105,7 @@ enum esz { static const struct test avx512f_all[] = { INSN_FP(add, 0f, 58

[Xen-devel] [PATCH v5 13/47] x86emul: support AVX512F v{, u}comis{d, s} insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich Acked-by: Andrew Cooper --- v4: Add missing avx512_vlen_check(). v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -107,6 +107,8 @@ static const struct test avx512f_all[] = INSN_FP(add, 0f, 58), IN

[Xen-devel] [PATCH v5 14/47] x86emul: support AVX512{F, BW} packed integer compare insns

2018-11-19 Thread Jan Beulich
Include VPTEST{,N}M{B,D,Q,W} as once again possibly used by the compiler for comparison against all-zero vectors. Also table entries for a few more insns get their .d8s field set right away, again in order to not split and later re-combine the groups. Signed-off-by: Jan Beulich --- v3: New. ---

[Xen-devel] [PATCH v5 16/47] x86emul: use simd_128 also for legacy vector shift insns

2018-11-19 Thread Jan Beulich
This eliminates a separate case block here, and allows to get away with fewer new ones when adding AVX512 vector shifts. Signed-off-by: Jan Beulich --- v3: New. --- a/xen/arch/x86/x86_emulate/x86_emulate.c +++ b/xen/arch/x86/x86_emulate/x86_emulate.c @@ -366,19 +366,19 @@ static const struct two

[Xen-devel] [PATCH v5 15/47] x86emul: support AVX512{F, BW} packed integer arithmetic insns

2018-11-19 Thread Jan Beulich
Note: vpadd* / vpsub* et al are put at seemingly the wrong slot of the big switch(). This is in anticipation of adding e.g. vpunpck* to those groups (see the legacy/VEX encoded case labels nearby to support this). Signed-off-by: Jan Beulich --- v4: Move a case block further down. v3: New. --- a/

[Xen-devel] [PATCH v5 17/47] x86emul: support AVX512{F, BW} shift/rotate insns

2018-11-19 Thread Jan Beulich
Note that simd_packed_fp for the opcode space 0f38 major opcodes 14 and 15 is not really correct, but sufficient for the purposes here. Further adjustments may later be needed for the down conversion unsigned saturating VPMOV* insns, first and foremost for the different Disp8 scaling those ones use

[Xen-devel] [PATCH v5 18/47] x86emul: support AVX512{F, BW, DQ} extract insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v4: Make use of d8s_dq64. v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -212,6 +212,7 @@ static const struct test avx512f_all[] = }; static const struct test avx512f_128[] = { +INSN(extractps, 66, 0f3a, 1

[Xen-devel] [PATCH v5 19/47] x86emul: support AVX512{F, BW, DQ} insert insns

2018-11-19 Thread Jan Beulich
Also correct the comment of the AVX form of VINSERTPS. Signed-off-by: Jan Beulich --- v4: Make use of d8s_dq64. v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -213,6 +213,7 @@ static const struct test avx512f_all[] = static const struct tes

[Xen-devel] [PATCH v5 20/47] x86emul: basic AVX512F testing

2018-11-19 Thread Jan Beulich
Test various of the insns which have been implemented already. Signed-off-by: Jan Beulich --- v5: Add VSQRT* tests. v4: Make eq() also work for 4- and 8-byte integer element sizes. v3: New. --- a/tools/tests/x86_emulator/Makefile +++ b/tools/tests/x86_emulator/Makefile @@ -16,7 +16,7 @@ vpath %.

[Xen-devel] [PATCH v5 22/47] x86emul: basic AVX512VL testing

2018-11-19 Thread Jan Beulich
Test the 128- and 256-bit variants of the insns which have been implemented already. Signed-off-by: Jan Beulich --- v4: Move OVR() additions into __AVX512VL__ conditional. v3: New. --- a/tools/tests/x86_emulator/Makefile +++ b/tools/tests/x86_emulator/Makefile @@ -63,7 +63,7 @@ avx2-sg-flts := 4

[Xen-devel] [PATCH v5 21/47] x86emul: support AVX512{F, BW, DQ} integer broadcast insns

2018-11-19 Thread Jan Beulich
Note that the pbroadcastw table entry in evex-disp8.c is slightly different from what one would expect, due to it requiring EVEX.W to be zero. Signed-off-by: Jan Beulich --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -164,6 +164,9 @@ stati

[Xen-devel] [PATCH v5 23/47] x86emul: support AVX512{F, BW} zero- and sign-extending moves

2018-11-19 Thread Jan Beulich
Note that the testing in simd.c doesn't really follow the ISA extension pattern - to fit the scheme, extensions from byte and word granular vectors can (currently) sensibly only happen in the AVX512BW case (and hence respective abstraction macros will be added there rather than here). Signed-off-b

[Xen-devel] [PATCH v5 24/47] x86emul: support AVX512{F, BW} down conversion moves

2018-11-19 Thread Jan Beulich
Note that the vpmov{,s,us}{d,q}w table entries in evex-disp8.c are slightly different from what one would expect, due to them requiring EVEX.W to be zero. Signed-off-by: Jan Beulich --- v5: Also adjust x86_insn_is_mem_write(). v4: Also #UD when evex.z is set with a memory operand. v3: New. --- a

[Xen-devel] [PATCH v2] x86: fix efi.lds dependency generation

2018-11-19 Thread Wei Liu
RANDCONFIG builds discover efi.lds is not updated when autogenerated headers are updated. Upon inspection, the generated .d file contains xen.lds.o as target, not the once thought efi.lds.o. That's because gcc disregards the output object name specified by -o when generating dependency, so the sed

[Xen-devel] [PATCH v5 25/47] x86emul: support AVX512{F, BW} integer unpack insns

2018-11-19 Thread Jan Beulich
There's once again one extra twobyte_table[] entry which gets its Disp8 shift value set right away without getting support implemented just yet, again to avoid needlessly splitting groups of entries. Signed-off-by: Jan Beulich --- v4: Move OVR() additions into __AVX512VL__ conditional. v3: New.

[Xen-devel] [PATCH v5 26/47] x86emul: support AVX512{F, BW, _VBMI} full permute insns

2018-11-19 Thread Jan Beulich
Take the liberty and also correct the (public interface) name of the AVX512_VBMI feature flag, on the assumption that no external consumer has actually been using that flag so far. Furthermore make it have AVX512BW instead of AVX512F as a prerequisite, for requiring full 64-bit mask registers (the

[Xen-devel] [PATCH v5 27/47] x86emul: support AVX512{F, BW} integer shuffle insns

2018-11-19 Thread Jan Beulich
Also include shuff{32x4,64x2} as being very similar to shufi{32x4,64x2}. Signed-off-by: Jan Beulich --- v5: Re-base over changes earlier in the series. v4: Move OVR() addition into __AVX512VL__ conditional. Correct comments. v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/

[Xen-devel] [PATCH v5 28/47] x86emul: support AVX512{BW, DQ} mask move insns

2018-11-19 Thread Jan Beulich
Entries to the tables in evex-disp8.c are added despite these insns not allowing for memory operands, with the goal of the tables giving a complete picture of the supported EVEX-encoded insns in the end. Signed-off-by: Jan Beulich --- v3: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/to

[Xen-devel] [PATCH v5 29/47] x86emul: basic AVX512BW testing

2018-11-19 Thread Jan Beulich
Test various of the insns which have been implemented already. Signed-off-by: Jan Beulich --- v4: Add __AVX512VL__ conditional around majority of OVR() additions. Correct eq() for 1- and 2-byte cases. v3: New. --- a/tools/tests/x86_emulator/Makefile +++ b/tools/tests/x86_emulator/Makefile @@

[Xen-devel] [PATCH v5 32/47] x86emul: support AVX512F move duplicate insns

2018-11-19 Thread Jan Beulich
Judging from insn prefixes, these are scalar insns, but their (memory) operands are vector ones (with the exception of 128-bit VMOVDDUP). For this some adjustments to disp8scale calculation code are needed. No explicit test harness additions other than the overrides, as the compiler already makes

[Xen-devel] [PATCH v5 30/47] x86emul: basic AVX512DQ testing

2018-11-19 Thread Jan Beulich
Test various of the insns which have been implemented already. Signed-off-by: Jan Beulich --- v5: Re-base over changes earlier in the series. v4: Wrap OVR(pmullq) in __AVX512VL__ conditional. v3: New. --- a/tools/tests/x86_emulator/Makefile +++ b/tools/tests/x86_emulator/Makefile @@ -16,7 +16,7

[Xen-devel] [PATCH v5 31/47] x86emul: support AVX512F move high/low insns

2018-11-19 Thread Jan Beulich
No explicit test harness additions other than the overrides, as the compiler already makes use of the insns. Signed-off-by: Jan Beulich --- v4: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -253,6 +253,16 @@ static const struct test avx512f_128[]

[Xen-devel] [PATCH v5 33/47] x86emul: support AVX512{F, BW, VBMI} permute insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v5: Re-base over changes earlier in the series. v4: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -177,6 +177,10 @@ static const struct test avx512f_all[] = INSN(pcmpu,66, 0f3a, 1e,vl, dq, vl),

[Xen-devel] [PATCH v5 34/47] x86emul: support AVX512BW pack insns

2018-11-19 Thread Jan Beulich
No further test harness additions - what is there is good enough for these rather "regular" insns. Signed-off-by: Jan Beulich --- v4: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -307,6 +307,10 @@ static const struct test avx512bw_all[] INS

[Xen-devel] [PATCH v5 35/47] x86emul: support AVX512F floating-point conversion insns

2018-11-19 Thread Jan Beulich
VCVTPS2PD, sharing its main opcode with others, needs a "manual" override of disp8scale. The simd_size change for twobyte_table[0x5a] is benign to pre-existing code, but allows decode_disp8scale() to work as is here. Also correct the comment on an AVX counterpart. Signed-off-by: Jan Beulich ---

[Xen-devel] [PATCH v5 36/47] x86emul: support AVX512F legacy-equivalent packed int/FP conversion insns

2018-11-19 Thread Jan Beulich
... including the two AVX512DQ forms which shared encodings, just with EVEX.W set there. VCVTDQ2PD, sharing its main opcode with others, needs a "manual" override of disp8scale. The simd_size changes for the twobyte_table[] entries are benign to pre-existing code, but allow decode_disp8scale() to

[Xen-devel] [PATCH v5 37/47] x86emul: support AVX512F legacy-equivalent scalar int/FP conversion insns

2018-11-19 Thread Jan Beulich
VCVT{,T}S{S,D}2SI use EVEX.W for their destination (register) rather than their (possibly memory) source operand size and hence need a "manual" override of disp8scale. Slightly adjust the scalar to_int() in the test harness, to increase the chances of the operand ending up in memory. Signed-off-b

[Xen-devel] [PATCH v5 38/47] x86emul: support AVX512DQ packed quad-int/FP conversion insns

2018-11-19 Thread Jan Beulich
VCVT{,T}PS2QQ, sharing their main opcodes with others, once again need "manual" overrides of disp8scale. While not directly related here, also add a scalar variant of to_wint() to the test harness. Signed-off-by: Jan Beulich --- v5: Re-base over changes earlier in the series. v4: New. --- a/too

[Xen-devel] [PATCH v5 39/47] x86emul: support AVX512{F, DQ} uint-to-FP conversion insns

2018-11-19 Thread Jan Beulich
Some "manual" overrides of disp8scale are needed here again. In particular code ends up simpler when using d8s_dq64 in the twobyte_table[] entry. Test harness additions will be done once the reverse conversions are also available. Signed-off-by: Jan Beulich --- v4: New. --- a/tools/tests/x86_em

[Xen-devel] [PATCH v5 41/47] x86emul: support remaining AVX512F legacy-equivalent insns

2018-11-19 Thread Jan Beulich
Plus their AVX512BW counterparts. Take the opportunity and also eliminate a pair of open coded instances of scalar_1op(). Signed-off-by: Jan Beulich --- v5: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -192,6 +192,8 @@ static const struct test

[Xen-devel] [PATCH v5 40/47] x86emul: support AVX512{F, DQ} FP-to-uint conversion insns

2018-11-19 Thread Jan Beulich
Along the lines of prior patches, VCVT{,T}PS2UQQ as well as VCVT{,T}S{S,D}2USI need "manual" overrides of disp8scale. The twobyte_table[] entries get altered, with their prior values now put in place in x86_decode_twobyte(). Signed-off-by: Jan Beulich --- v4: New. --- a/tools/tests/x86_emulator

[Xen-devel] [PATCH v5 42/47] x86emul: support remaining AVX512BW legacy-equivalent insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v5: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -355,6 +355,7 @@ static const struct test avx512bw_all[] INSN(paddusb, 66, 0f, dc,vl,b, vl), INSN(paddusw, 66, 0f, dd,vl,w, vl),

[Xen-devel] [PATCH v5 43/47] x86emul: support AVX512{F, ER} reciprocal insns

2018-11-19 Thread Jan Beulich
Also include the only other AVX512ER insn pair, VEXP2P{D,S}. Note that despite the replacement of the SHA insns' table slots there's no need to special case their decoding: Their insn-specific code already sets op_bytes (as was required due to simd_other), and TwoOp is of no relevance for legacy e

[Xen-devel] [PATCH v5 44/47] x86emul: support AVX512F floating point manipulation insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v5: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -140,6 +140,8 @@ static const struct test avx512f_all[] = INSN(cvtusi2sd,f2, 0f, 7b,el, dq64, el), INSN(cvtusi2ss,f3, 0f, 7b,el, dq6

[Xen-devel] [PATCH v5 46/47] x86emul: support AVX512{F, _VBMI2} compress/expand insns

2018-11-19 Thread Jan Beulich
Signed-off-by: Jan Beulich --- v5: New. --- TBD: Equivalent byte/word element size tests would be nice, but I didn't dare to code them up without actually being able to test the result. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -109,6 +109,7 @

[Xen-devel] [PATCH v5 45/47] x86emul: support AVX512DQ floating point manipulation insns

2018-11-19 Thread Jan Beulich
This completes support of AVX512DQ in the insn emulator. Signed-off-by: Jan Beulich --- v5: New. --- a/tools/tests/x86_emulator/evex-disp8.c +++ b/tools/tests/x86_emulator/evex-disp8.c @@ -458,11 +458,17 @@ static const struct test avx512dq_all[] INSN(cvttps2uqq, 66, 0f, 78, vl_2, d,

[Xen-devel] [PATCH v5 47/47] x86emul: support remaining misc AVX512{F, BW} insns

2018-11-19 Thread Jan Beulich
This completes support of AVX512BW in the insn emulator, and leaves just the scatter/gather ones open in the AVX512F set. Signed-off-by: Jan Beulich --- v5: New. --- TBD: The *blendm* inline functions don't reliably produce the intended insns, as the respective moves are about as good a fit

Re: [Xen-devel] [PATCH 5/9] drm/xen/xen_drm_front_gem.c: Convert to use vm_insert_range

2018-11-19 Thread Souptick Joarder
On Mon, Nov 19, 2018 at 3:22 PM Oleksandr Andrushchenko wrote: > > On 11/15/18 5:49 PM, Souptick Joarder wrote: > > Convert to use vm_insert_range() to map range of kernel > > memory to user vma. > > > > Signed-off-by: Souptick Joarder > > Reviewed-by: Matthew Wilcox > > --- > > drivers/gpu/dr

Re: [Xen-devel] [PATCH v2] x86: fix efi.lds dependency generation

2018-11-19 Thread Jan Beulich
>>> On 19.11.18 at 11:25, wrote: > --- a/xen/arch/x86/Makefile > +++ b/xen/arch/x86/Makefile > @@ -234,12 +234,12 @@ $(BASEDIR)/include/asm-x86/asm-macros.h: asm-macros.i > Makefile > > xen.lds: xen.lds.S > $(CC) -P -E -Ui386 $(filter-out -Wa$(comma)%,$(AFLAGS)) -o $@ $< > - sed -e '

Re: [Xen-devel] [PATCH 5/9] drm/xen/xen_drm_front_gem.c: Convert to use vm_insert_range

2018-11-19 Thread Oleksandr Andrushchenko
On 11/19/18 12:42 PM, Souptick Joarder wrote: On Mon, Nov 19, 2018 at 3:22 PM Oleksandr Andrushchenko wrote: On 11/15/18 5:49 PM, Souptick Joarder wrote: Convert to use vm_insert_range() to map range of kernel memory to user vma. Signed-off-by: Souptick Joarder Reviewed-by: Matthew Wilcox -

Re: [Xen-devel] [PATCH v2] x86: fix efi.lds dependency generation

2018-11-19 Thread Wei Liu
On Mon, Nov 19, 2018 at 03:45:23AM -0700, Jan Beulich wrote: > >>> On 19.11.18 at 11:25, wrote: > > --- a/xen/arch/x86/Makefile > > +++ b/xen/arch/x86/Makefile > > @@ -234,12 +234,12 @@ $(BASEDIR)/include/asm-x86/asm-macros.h: asm-macros.i > > Makefile > > > > xen.lds: xen.lds.S > > $(CC)

Re: [Xen-devel] [PATCH v4 1/5] vpci: fix updating the command register

2018-11-19 Thread Roger Pau Monné
On Mon, Nov 19, 2018 at 01:26:11AM -0700, Jan Beulich wrote: > >>> On 16.11.18 at 15:32, wrote: > > On Fri, Nov 16, 2018 at 05:00:29AM -0700, Jan Beulich wrote: > >> >>> On 14.11.18 at 12:57, wrote: > >> > @@ -413,7 +412,7 @@ static void rom_write(const struct pci_dev *pdev, > >> > unsigned int

[Xen-devel] [linux-linus test] 130382: regressions - trouble: blocked/broken/fail/pass

2018-11-19 Thread osstest service owner
flight 130382 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/130382/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-pvopsbroken build-arm64-libvirt

Re: [Xen-devel] [PATCH v4 1/5] vpci: fix updating the command register

2018-11-19 Thread Jan Beulich
>>> On 19.11.18 at 12:09, wrote: > On Mon, Nov 19, 2018 at 01:26:11AM -0700, Jan Beulich wrote: >> >>> On 16.11.18 at 15:32, wrote: >> > On Fri, Nov 16, 2018 at 05:00:29AM -0700, Jan Beulich wrote: >> >> >>> On 14.11.18 at 12:57, wrote: >> >> > @@ -413,7 +412,7 @@ static void rom_write(const str

[Xen-devel] [xen-unstable-smoke test] 130490: trouble: blocked/broken/pass

2018-11-19 Thread osstest service owner
flight 130490 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/130490/ Failures and problems with tests :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm broken build-arm64-xs

Re: [Xen-devel] [xen-unstable test] 129817: regressions - FAIL

2018-11-19 Thread Ian Jackson
osstest service owner writes ("[xen-unstable test] 129817: regressions - FAIL"): > flight 129817 xen-unstable real [real] > http://logs.test-lab.xenproject.org/osstest/logs/129817/ > > Regressions :-( > > Tests which did not succeed and are blocking, > including tests which could not be run: > t

[Xen-devel] [xen-unstable test] 130409: regressions - trouble: blocked/broken/fail/pass

2018-11-19 Thread osstest service owner
flight 130409 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/130409/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-arm64-xsm broken build-arm64-pvops

Re: [Xen-devel] [PATCH v1 2/8] mm: convert PG_balloon to PG_offline

2018-11-19 Thread Konstantin Khlebnikov
On Mon, Nov 19, 2018 at 1:16 PM David Hildenbrand wrote: > > PG_balloon was introduced to implement page migration/compaction for pages > inflated in virtio-balloon. Nowadays, it is only a marker that a page is > part of virtio-balloon and therefore logically offline. > > We also want to make use

Re: [Xen-devel] [PATCH] gic:vgic: avoid excessive conversions

2018-11-19 Thread Andrii Anisov
Hello Julien, On 16.11.18 19:27, Julien Grall wrote:   if ( !list_empty(&p->inflight) &&    !test_bit(GIC_IRQ_GUEST_VISIBLE, &p->status) ) -    gic_raise_guest_irq(v, p->irq, p->lpi_priority); +    gic_raise_guest_irq(v, p); The interface is not behaving th

Re: [Xen-devel] [RFC PATCH v2 00/17] Add support for qemu-xen runnning in a Linux-based stubdomain.

2018-11-19 Thread Anthony PERARD
On Sun, Nov 18, 2018 at 06:25:53PM +0100, Marek Marczykowski-Górecki wrote: > On Fri, Nov 16, 2018 at 10:39:07AM +, Anthony PERARD wrote: > > The 'guest-sync-delimited' command doesn't seems to be available on the > > monitor socket. I should have checked that ... but that would just mean > > t

[Xen-devel] [ovmf test] 130499: regressions - FAIL

2018-11-19 Thread osstest service owner
flight 130499 ovmf real [real] http://logs.test-lab.xenproject.org/osstest/logs/130499/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: build-i386-xsm6 xen-buildfail REGR. vs. 129475 build-amd64

Re: [Xen-devel] [PATCH v1 7/8] PM / Hibernate: use pfn_to_online_page()

2018-11-19 Thread Michal Hocko
On Mon 19-11-18 11:16:15, David Hildenbrand wrote: > Let's use pfn_to_online_page() instead of pfn_to_page() when checking > for saveable pages to not save/restore offline memory sections. > > Cc: "Rafael J. Wysocki" > Cc: Pavel Machek > Cc: Len Brown > Cc: Andrew Morton > Cc: Matthew Wilcox

Re: [Xen-devel] [PATCH v1 4/8] xen/balloon: mark inflated pages PG_offline

2018-11-19 Thread Juergen Gross
On 19/11/2018 11:16, David Hildenbrand wrote: > Mark inflated and never onlined pages PG_offline, to tell the world that > the content is stale and should not be dumped. > > Cc: Boris Ostrovsky > Cc: Juergen Gross > Cc: Stefano Stabellini > Cc: Andrew Morton > Cc: Matthew Wilcox > Cc: Michal

[Xen-devel] [PATCH 00/22] QOM'ify SysBusDeviceClass->init

2018-11-19 Thread Mao Zhongyi
The SysBusDeviceClass::init() interface is considered as a legacy interface and there are currently some efforts going on to get rid of it. Thus convert SysBusDeviceClass::init to DeviceClass::realize. Cc: alistair.fran...@wdc.com Cc: anthony.per...@citrix.com Cc: arm...@redhat.com Cc: borntrae..

[Xen-devel] [PATCH 20/22] xen_backend: Convert sysbus init function to realize function

2018-11-19 Thread Mao Zhongyi
Use DeviceClass rather than SysBusDeviceClass in xen_sysdev_class_init(). Cc: sstabell...@kernel.org Cc: anthony.per...@citrix.com Cc: xen-devel@lists.xenproject.org Signed-off-by: Mao Zhongyi Signed-off-by: Zhang Shengju --- hw/xen/xen_backend.c | 6 ++ 1 file changed, 2 insertions(+), 4

Re: [Xen-devel] [PATCH v2] xen/pt: fix some pass-thru devices don't work across reboot

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 15:30, wrote: > On Fri, Nov 16, 2018 at 02:59:41AM -0700, Jan Beulich wrote: >> >>> On 16.11.18 at 10:35, wrote: >> > On Fri, Nov 16, 2018 at 03:53:50PM +0800, Chao Gao wrote: >> >> On Thu, Nov 15, 2018 at 11:40:39AM +0100, Roger Pau Monné wrote: >> >> >On Thu, Nov 15, 2018 at

Re: [Xen-devel] [PATCH 00/22] QOM'ify SysBusDeviceClass->init

2018-11-19 Thread Cornelia Huck
On Mon, 19 Nov 2018 20:07:58 +0800 Mao Zhongyi wrote: > The SysBusDeviceClass::init() interface is considered > as a legacy interface and there are currently some > efforts going on to get rid of it. Thus convert > SysBusDeviceClass::init to DeviceClass::realize. In case my comment to the s390

Re: [Xen-devel] [PATCH 5/9] drm/xen/xen_drm_front_gem.c: Convert to use vm_insert_range

2018-11-19 Thread Matthew Wilcox
On Mon, Nov 19, 2018 at 01:02:46PM +0200, Oleksandr Andrushchenko wrote: > On 11/19/18 12:42 PM, Souptick Joarder wrote: > > On Mon, Nov 19, 2018 at 3:22 PM Oleksandr Andrushchenko > > wrote: > > > > - unsigned long addr = vma->vm_start; > > > > - int i; > > > > + int err; > > > I woul

Re: [Xen-devel] [PATCH v2] xen/pt: fix some pass-thru devices don't work across reboot

2018-11-19 Thread Chao Gao
On Fri, Nov 16, 2018 at 03:30:11PM +0100, Roger Pau Monné wrote: >On Fri, Nov 16, 2018 at 02:59:41AM -0700, Jan Beulich wrote: >> >>> On 16.11.18 at 10:35, wrote: >> > On Fri, Nov 16, 2018 at 03:53:50PM +0800, Chao Gao wrote: >> >> On Thu, Nov 15, 2018 at 11:40:39AM +0100, Roger Pau Monné wrote: >

Re: [Xen-devel] [PATCH V6 4/4] x86/altp2m: fix display frozen when switching to a new view early

2018-11-19 Thread Jan Beulich
>>> On 16.11.18 at 16:52, wrote: > On 11/16/18 3:05 PM, George Dunlap wrote: >> Now take change_type_range. The global effect of change_type_range >> should be that reads of the p2m which happen afterwards should have the >> new, changed value. >> >> In case A, change_type_range will write inval

Re: [Xen-devel] [PATCH v2] xen/pt: fix some pass-thru devices don't work across reboot

2018-11-19 Thread Jan Beulich
>>> On 19.11.18 at 13:45, wrote: > Another solution came to my mind: > > The intention of Xen setting 'host_maskall' is to mask a single vector. How > about converting the host_maskall to mask all vectors when Xen tries to init > the first vector in msix_capability_init()? Actually, on hardware,

Re: [Xen-devel] [PATCH V6 4/4] x86/altp2m: fix display frozen when switching to a new view early

2018-11-19 Thread Razvan Cojocaru
On 11/19/18 2:42 PM, Jan Beulich wrote: On 16.11.18 at 16:52, wrote: >> On 11/16/18 3:05 PM, George Dunlap wrote: >>> Now take change_type_range. The global effect of change_type_range >>> should be that reads of the p2m which happen afterwards should have the >>> new, changed value. >>> >>>

Re: [Xen-devel] [PATCH v1 4/8] xen/balloon: mark inflated pages PG_offline

2018-11-19 Thread David Hildenbrand
On 19.11.18 13:22, Juergen Gross wrote: > On 19/11/2018 11:16, David Hildenbrand wrote: >> Mark inflated and never onlined pages PG_offline, to tell the world that >> the content is stale and should not be dumped. >> >> Cc: Boris Ostrovsky >> Cc: Juergen Gross >> Cc: Stefano Stabellini >> Cc: An

Re: [Xen-devel] [PATCH v1 7/8] PM / Hibernate: use pfn_to_online_page()

2018-11-19 Thread Pavel Machek
On Mon 2018-11-19 11:16:15, David Hildenbrand wrote: > Let's use pfn_to_online_page() instead of pfn_to_page() when checking > for saveable pages to not save/restore offline memory sections. > > Cc: "Rafael J. Wysocki" Acked-by: Pavel Machek -- (english) http://www.livejournal.com/~pavelmache

Re: [Xen-devel] [PATCH v2] xen/pt: fix some pass-thru devices don't work across reboot

2018-11-19 Thread Chao Gao
On Mon, Nov 19, 2018 at 05:55:08AM -0700, Jan Beulich wrote: On 19.11.18 at 13:45, wrote: >> Another solution came to my mind: >> >> The intention of Xen setting 'host_maskall' is to mask a single vector. How >> about converting the host_maskall to mask all vectors when Xen tries to init >>

[Xen-devel] [PATCH] libx86: Work around GCC bug with ebx output constrants

2018-11-19 Thread Andrew Cooper
Some versions of GCC can't compile cpuid.c, and fail with the rather cryptic: In file included from lib/x86/cpuid.c:3:0: lib/x86/cpuid.c: In function ‘x86_cpuid_policy_fill_native’: include/xen/lib/x86/cpuid.h:25:5: error: inconsistent operand constraints in an ‘asm’ asm ( "cpuid"

Re: [Xen-devel] [PATCH v1] x86/hvm: Generic instruction re-execution mechanism for execute faults

2018-11-19 Thread Alexandru Stefan ISAILA
>> +/* Now transform our RWX values in a XENMEM_access_* constant. */ >> +if ( r == 0 && w == 0 && x == 0 ) >> +new_access = XENMEM_access_n; >> +else if ( r == 0 && w == 0 && x == 1 ) >> +new_access = XENMEM_access_x; >> +else if ( r == 0 && w == 1 && x == 0 ) >> +

  1   2   3   >