[xen-unstable test] 179018: tolerable trouble: fail/pass/starved - PUSHED

2023-03-02 Thread osstest service owner
flight 179018 xen-unstable real [real] flight 179059 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/179018/ http://logs.test-lab.xenproject.org/osstest/logs/179059/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd6

Re: [PATCH 1/2] automation: arm64: Create a test job for testing static heap on qemu

2023-03-02 Thread Michal Orzel
Hi Jiamei, On 03/03/2023 07:49, Jiamei Xie wrote: > > > Hi Stefano, > >> -Original Message- >> From: Stefano Stabellini >> Sent: Friday, March 3, 2023 9:51 AM >> To: Jiamei Xie >> Cc: xen-devel@lists.xenproject.org; Wei Chen ; >> sstabell...@kernel.org; Bertrand Marquis ; >> Doug Gold

Re: [XEN PATCH v7 13/20] xen/arm: ffa: support mapping guest RX/TX buffers

2023-03-02 Thread Jens Wiklander
Hi Bertrand, On Thu, Mar 2, 2023 at 4:05 PM Bertrand Marquis wrote: > > Hi Jens, > > > On 22 Feb 2023, at 16:33, Jens Wiklander wrote: > > > > Adds support in the mediator to map and unmap the RX and TX buffers > > provided by the guest using the two FF-A functions FFA_RXTX_MAP and > > FFA_RXTX_

Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Thomas Huth
On 02/03/2023 23.16, Philippe Mathieu-Daudé wrote: On 2/3/23 17:31, Thomas Huth wrote: qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of ye

[PATCH] x86/altp2m: help gcc13 to avoid it emitting a warning

2023-03-02 Thread Jan Beulich
Switches of altp2m-s always expect a valid altp2m to be in place (and indeed altp2m_vcpu_initialise() sets the active one to be at index 0). The compiler, however, cannot know that, and hence it cannot eliminate p2m_get_altp2m()'s case of returnin (literal) NULL. If then the compiler decides to spe

[PATCH RFC] bunzip: work around gcc13 warning

2023-03-02 Thread Jan Beulich
While provable that length[0] is always initialized (because symCount cannot be zero), upcoming gcc13 fails to recognize this and warns about the unconditional use of the value immediately following the loop. See also https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106511. Reported-by: Martin Liška

Re: [PATCH 1/2] x86/cpuid: Infrastructure for leaves 7:1{ecx,edx}

2023-03-02 Thread Jan Beulich
On 04.01.2023 12:11, Andrew Cooper wrote: > --- a/xen/include/public/arch-x86/cpufeatureset.h > +++ b/xen/include/public/arch-x86/cpufeatureset.h > @@ -288,6 +288,9 @@ XEN_CPUFEATURE(NSCB, 11*32+ 6) /*A Null > Selector Clears Base (and > /* Intel-defined CPU features, CPUID level 0

Re: [XEN PATCH v7 07/20] xen/arm: ffa: add defines for framework direct request/response messages

2023-03-02 Thread Jens Wiklander
Hi Bertrand, On Fri, Feb 24, 2023 at 10:39 AM Bertrand Marquis wrote: > > Hi Jens, > > > On 22 Feb 2023, at 16:33, Jens Wiklander wrote: > > > > Adds defines for framework direct request/response messages. > > > > Signed-off-by: Jens Wiklander > > --- > > xen/arch/arm/tee/ffa.c | 9 + >

RE: [ImageBuilder][PATCH 1/2] uboot-script-gen: Add support for static heap

2023-03-02 Thread Jiamei Xie
Hi Stefano and Michal, > -Original Message- > From: Stefano Stabellini > Sent: Friday, March 3, 2023 7:42 AM > To: Michal Orzel > Cc: Jiamei Xie ; xen-devel@lists.xenproject.org; Wei > Chen ; sstabell...@kernel.org > Subject: Re: [ImageBuilder][PATCH 1/2] uboot-script-gen: Add support fo

RE: [PATCH 1/2] automation: arm64: Create a test job for testing static heap on qemu

2023-03-02 Thread Jiamei Xie
Hi Stefano, > -Original Message- > From: Stefano Stabellini > Sent: Friday, March 3, 2023 9:51 AM > To: Jiamei Xie > Cc: xen-devel@lists.xenproject.org; Wei Chen ; > sstabell...@kernel.org; Bertrand Marquis ; > Doug Goldstein > Subject: Re: [PATCH 1/2] automation: arm64: Create a test j

[linux-linus test] 178998: regressions - trouble: fail/pass/starved

2023-03-02 Thread osstest service owner
flight 178998 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/178998/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 178042 test-amd64-amd64-qe

Re: [RFC XEN PATCH 0/7] automation, RFC prototype, Have GitLab CI built its own containers

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, Anthony PERARD wrote: > Patch series available in this git branch: > https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git > br.gitlab-containers-auto-rebuild-v1 > > Hi, > > I have done some research to be able to build containers in the CI. This works > only for x

Re: [PATCH 2/2] automation: arm64: Create a test job for testing static shared memory on qemu

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, jiamei.xie wrote: > Create a new test job, called qemu-smoke-dom0less-arm64-gcc-static-shared-mem. > > Adjust qemu-smoke-dom0less-arm64.sh script to accomodate the static > shared memory test as a new test variant. The test variant is determined > based on the first argument pa

Re: [PATCH 1/2] automation: arm64: Create a test job for testing static heap on qemu

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, jiamei.xie wrote: > From: Jiamei Xie > > Create a new test job, called qemu-smoke-dom0less-arm64-gcc-staticheap. > > Add property "xen,static-heap" under /chosen node to enable static-heap. > If the domU can start successfully with static-heap enabled, then this > test pass.

RE: [PATCH 3/7] hv: simplify sysctl registration

2023-03-02 Thread Michael Kelley (LINUX)
From: Luis Chamberlain On Behalf Of Luis Chamberlain Sent: Thursday, March 2, 2023 12:46 PM > > register_sysctl_table() is a deprecated compatibility wrapper. > register_sysctl() can do the directory creation for you so just use > that. > > Signed-off-by: Luis Chamberlain > --- > drivers/hv/vm

Re: [PATCH v2 1/2] xen/cppcheck: add a way to exclude files from the scan

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, Luca Fancellu wrote: > >> +Exclude file list for xen-analysis script > >> += > >> + > >> +The code analysis is performed on the Xen codebase for both MISRA > >> checkers and > >> +static analysis checkers, there are some files however tha

Re: [ImageBuilder][PATCH 2/2] uboot-script-gen: Add support for static shared memory

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, jiamei.xie wrote: > Introduce support for creating shared-mem node for dom0less domUs in > the device tree. Add the following options: > - DOMU_SHARED_MEM[number]="HPA GPA size" > if specified, indicates the host physical address HPA will get mapped > at guest address GPA in

Re: [ImageBuilder][PATCH 1/2] uboot-script-gen: Add support for static heap

2023-03-02 Thread Stefano Stabellini
On Thu, 2 Mar 2023, Michal Orzel wrote: > Hi Jiamei, > > Patch looks good apart from minor comments down below. Just wanted to add that the patch looks OK to me too and don't have any further comments beyond the ones Michal's already made > On 02/03/2023 05:46, jiamei.xie wrote: > > > > > > F

Re: [PATCH 2/7] ipmi: simplify sysctl registration

2023-03-02 Thread Corey Minyard
On Thu, Mar 02, 2023 at 12:46:07PM -0800, Luis Chamberlain wrote: > register_sysctl_table() is a deprecated compatibility wrapper. > register_sysctl() can do the directory creation for you so just use > that. Thanks, I have included this in my tree for the next merge window. -corey > > Signed-o

Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of years ago already, so we don't really need qemu-system

Re: [PATCH v2 0/6] Deprecate support for 32-bit x86 and arm hosts

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: We're struggling quite badly with our CI minutes on the shared gitlab runners, so we urgently need to think of ways to cut down our supported build and target environments. qemu-system-i386 and qemu-system-arm are not really required anymore, since nobody uses

Re: [PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Philippe Mathieu-Daudé
On 2/3/23 17:31, Thomas Huth wrote: Hardly anybody still uses 32-bit arm environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 14 -- 1 file changed, 14 deletions(-) Reviewed-by:

[xen-unstable test] 178965: tolerable trouble: fail/pass/starved

2023-03-02 Thread osstest service owner
flight 178965 xen-unstable real [real] http://logs.test-lab.xenproject.org/osstest/logs/178965/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd64-i386-xl-qemut-debianhvm-amd64 7 xen-installfail pass in 178922 test-amd64-i386-xl-qemuu-debianh

[PATCH 3/7] hv: simplify sysctl registration

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl() can do the directory creation for you so just use that. Signed-off-by: Luis Chamberlain --- drivers/hv/vmbus_drv.c | 11 +-- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/drivers/hv/vmbus_drv

[PATCH 0/7] sysctl: slowly deprecate register_sysctl_table()

2023-03-02 Thread Luis Chamberlain
As the large array of sysctls in kernel/sysctl.c is reduced we get to the point of wanting to optimize how we register sysctls by only dealing with flat simple structures, with no subdirectories. In particular the last empty element should not be needed. We'll get there, and save some memory, but a

[PATCH 6/7] tty: simplify sysctl registration

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl_init() can do the directory creation for you so just use that Signed-off-by: Luis Chamberlain --- drivers/tty/tty_io.c | 20 +--- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/drivers/t

[PATCH 7/7] xen: simplify sysctl registration for balloon

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl_init() can do the directory creation for you so just use that. Signed-off-by: Luis Chamberlain --- drivers/xen/balloon.c | 20 +--- 1 file changed, 1 insertion(+), 19 deletions(-) diff --git a/drivers

[PATCH 1/7] scsi: simplify sysctl registration with register_sysctl()

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl() can do the directory creation for you so just use that. Signed-off-by: Luis Chamberlain --- drivers/scsi/scsi_sysctl.c | 16 +--- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/drivers/scs

[PATCH 2/7] ipmi: simplify sysctl registration

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl() can do the directory creation for you so just use that. Signed-off-by: Luis Chamberlain --- drivers/char/ipmi/ipmi_poweroff.c | 16 +--- 1 file changed, 1 insertion(+), 15 deletions(-) diff --git a/driv

[PATCH 4/7] md: simplify sysctl registration

2023-03-02 Thread Luis Chamberlain
register_sysctl_table() is a deprecated compatibility wrapper. register_sysctl() can do the directory creation for you so just use that. Signed-off-by: Luis Chamberlain --- drivers/md/md.c | 22 +- 1 file changed, 1 insertion(+), 21 deletions(-) diff --git a/drivers/md/md.c

[PATCH 5/7] sgi-xp: simplify sysctl registration

2023-03-02 Thread Luis Chamberlain
Although this driver is a good use case for having a directory that is not other directories and then subdirectories with more entries, the usage of register_sysctl_table() can recurse and increases complexity so to avoid that just split out the registration to each directory with its own entries.

Re: [PATCH v2 2/3] xen/riscv: initialize .bss section

2023-03-02 Thread Andrew Cooper
On 02/03/2023 3:55 pm, Oleksii wrote: > On Thu, 2023-03-02 at 15:22 +0100, Jan Beulich wrote: >> On 02.03.2023 14:23, Oleksii Kurochko wrote: >>> --- a/xen/arch/riscv/riscv64/head.S >>> +++ b/xen/arch/riscv/riscv64/head.S >>> @@ -13,6 +13,15 @@ ENTRY(start) >>> lla a6, _dtb_base >>>   

Re: [PATCH v2 1/3] xen/riscv: read/save hart_id and dtb_base passed by bootloader

2023-03-02 Thread Andrew Cooper
On 02/03/2023 2:53 pm, Oleksii wrote: > On Thu, 2023-03-02 at 14:02 +, Andrew Cooper wrote: >> On 02/03/2023 1:23 pm, Oleksii Kurochko wrote: >>> + >>> +    /* >>> + * DTB base is passed by a bootloader >>> + */ >>> +_dtb_base: >>> +    RISCV_PTR 0x0 >>> diff --git a/xen

Re: [PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:06PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit arm environments for running QEMU, > so let's stop wasting our scarce CI minutes with these jobs. > > Signed-off-by: Thomas Huth > --- > .gitlab-ci.d/crossbuilds.yml | 14 -- > 1 file chan

Re: [PATCH v2 5/6] docs/about/deprecated: Deprecate 32-bit arm hosts

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:05PM +0100, Thomas Huth wrote: > For running QEMU in system emulation mode, the user needs a rather > strong host system, i.e. not only an embedded low-frequency controller. > All recent beefy arm host machines should support 64-bit now, it's > unlikely that anybody is

Re: [PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:04PM +0100, Thomas Huth wrote: > qemu-system-aarch64 is a proper superset of qemu-system-arm, > and the latter was mainly still required for 32-bit KVM support. > But this 32-bit KVM arm support has been dropped in the Linux > kernel a couple of years ago already, so w

Re: [PATCH v2 3/6] gitlab-ci.d/crossbuilds: Drop the i386 jobs

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:03PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit x86 environments for running QEMU, > so let's stop wasting our scarce CI minutes with these jobs. > > Signed-off-by: Thomas Huth > --- > .gitlab-ci.d/crossbuilds.yml | 16 > 1 file ch

Re: [PATCH v2 2/6] docs/about/deprecated: Deprecate 32-bit x86 hosts

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:02PM +0100, Thomas Huth wrote: > Hardly anybody still uses 32-bit x86 hosts today, so we should start > deprecating them to stop wasting our time and CI minutes here. > For example, there are also still some unresolved problems with these: > When emulating 64-bit binar

Re: [PATCH v2 1/6] docs/about/deprecated: Deprecate the qemu-system-i386 binary

2023-03-02 Thread Daniel P . Berrangé
On Thu, Mar 02, 2023 at 05:31:01PM +0100, Thomas Huth wrote: > Hardly anybody really requires the i386 binary anymore, since the > qemu-system-x86_64 binary is a proper superset. So let's deprecate > the 32-bit variant now, so that we can finally stop wasting our time > and CI minutes with this. T

[RFC XEN PATCH 7/7] automation: Add some more push containers jobs

2023-03-02 Thread Anthony PERARD
Signed-off-by: Anthony PERARD --- Notes: WARNING: This is an incomplete list of jobs needed to push. automation/gitlab-ci/push-containers.yaml | 49 +++ 1 file changed, 49 insertions(+) diff --git a/automation/gitlab-ci/push-containers.yaml b/automation/gitlab-ci/push-

[RFC XEN PATCH 6/7] automation: Push container been tested

2023-03-02 Thread Anthony PERARD
Now, we can run a pipeline and set two variables to have a container been rebuilt, tested, and pushed. Variables: DO_REBUILD_CONTAINER = "ubuntu/xenial" PUSH_CONTAINER = 1 Or if PUSH_CONTAINER is set on a gitlab project "xen-project/xen", a change on the dockerfile can result in a contain

[RFC XEN PATCH 3/7] automation: Add a template per container for build jobs.

2023-03-02 Thread Anthony PERARD
Have one template per container, which each build job will extend. This will allow to add more variable which are linked to a used container. Signed-off-by: Anthony PERARD --- automation/gitlab-ci/build.yaml | 327 1 file changed, 202 insertions(+), 125 deletions

[RFC XEN PATCH 0/7] automation, RFC prototype, Have GitLab CI built its own containers

2023-03-02 Thread Anthony PERARD
Patch series available in this git branch: https://xenbits.xen.org/git-http/people/aperard/xen-unstable.git br.gitlab-containers-auto-rebuild-v1 Hi, I have done some research to be able to build containers in the CI. This works only for x86 containers as I've setup only a single x86 gitlab-runne

[RFC XEN PATCH 5/7] automation: Introduce DO_REBUILD_CONTAINER, to allow to rebuild a container

2023-03-02 Thread Anthony PERARD
This allow to start a pipeline manually and set a variable to test the build of a single container, e.g. DO_REBUILD_CONTAINER = ubuntu/xenial Signed-off-by: Anthony PERARD --- automation/gitlab-ci/containers.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/automation/gitlab-ci/contai

[RFC XEN PATCH 4/7] automation: Adding containers build jobs and test of thoses

2023-03-02 Thread Anthony PERARD
For the test-containers jobs, mostly copy from "build.yaml", rename '.container-*-tmpl' templates to '.container-*-testtmpl', prefix build jobs with "test-", add BUILD_CONTAINER and "needs" to container template. Signed-off-by: Anthony PERARD --- Notes: WARNING: This is an incomplete list of

[RFC XEN PATCH 1/7] automation: Automatically rebuild debian:unstable container

2023-03-02 Thread Anthony PERARD
Only run this on the staging branch, whenever the dockerfile changes. Allow to set a suffix when building containers, to be able to test it before changing the one in production. Using "rules" instead of "only" as this allow to use variables in the "changes" rules. Also, "rules" is the preferred

[RFC XEN PATCH 2/7] automation: Introduce test-containers stage

2023-03-02 Thread Anthony PERARD
Jobs in the "test-containers" stage will be used to check that the newly built container is working fine, and that it could be used in production. Need to rename jobs name compared to "build.yaml", adding "test-" prefix to all build jobs. Need also to rename templates as many of them are used wit

Re: [PATCH v1] xen/arm: align *(.proc.info) in the linker script

2023-03-02 Thread Oleksii
On Thu, 2023-03-02 at 14:50 +, Julien Grall wrote: > Hi Oleksii, > > On 02/03/2023 07:34, Oleksii wrote: > > Hi Julien, > > > > > On Wed, 2023-03-01 at 16:21 +, Julien Grall wrote: > > > > > > Hi Oleksii, > > > > > > > > > > > > On 01/03/2023 16:14, Oleksii Kurochko wrote: > > > > > > > D

Re: [PATCH v2 3/3] xen/riscv: disable fpu

2023-03-02 Thread Oleksii
On Thu, 2023-03-02 at 14:20 +, Andrew Cooper wrote: > On 02/03/2023 1:23 pm, Oleksii Kurochko wrote: > > Disable FPU to detect illegal usage of floating point in kernel > > space. > > > > Signed-off-by: Oleksii Kurochko > > --- > > Changes since v1: > >  * Rebase on top of two previous patche

[xen-unstable-smoke test] 178990: tolerable trouble: pass/starved - PUSHED

2023-03-02 Thread osstest service owner
flight 178990 xen-unstable-smoke real [real] http://logs.test-lab.xenproject.org/osstest/logs/178990/ Failures :-/ but no regressions. Tests which did not succeed, but are not blocking: test-amd64-amd64-libvirt 15 migrate-support-checkfail never pass test-arm64-arm64-xl-xsm 1

[PATCH v2 6/6] gitlab-ci.d/crossbuilds: Drop the 32-bit arm system emulation jobs

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit arm environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 14 -- 1 file changed, 14 deletions(-) diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab-c

[PATCH v2 5/6] docs/about/deprecated: Deprecate 32-bit arm hosts

2023-03-02 Thread Thomas Huth
For running QEMU in system emulation mode, the user needs a rather strong host system, i.e. not only an embedded low-frequency controller. All recent beefy arm host machines should support 64-bit now, it's unlikely that anybody is still seriously using QEMU on a 32-bit arm CPU, so we deprecate the

[PATCH v2 4/6] docs/about/deprecated: Deprecate the qemu-system-arm binary

2023-03-02 Thread Thomas Huth
qemu-system-aarch64 is a proper superset of qemu-system-arm, and the latter was mainly still required for 32-bit KVM support. But this 32-bit KVM arm support has been dropped in the Linux kernel a couple of years ago already, so we don't really need qemu-system-arm anymore, thus deprecated it now.

[PATCH v2 3/6] gitlab-ci.d/crossbuilds: Drop the i386 jobs

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit x86 environments for running QEMU, so let's stop wasting our scarce CI minutes with these jobs. Signed-off-by: Thomas Huth --- .gitlab-ci.d/crossbuilds.yml | 16 1 file changed, 16 deletions(-) diff --git a/.gitlab-ci.d/crossbuilds.yml b/.gitlab

[PATCH v2 2/6] docs/about/deprecated: Deprecate 32-bit x86 hosts

2023-03-02 Thread Thomas Huth
Hardly anybody still uses 32-bit x86 hosts today, so we should start deprecating them to stop wasting our time and CI minutes here. For example, there are also still some unresolved problems with these: When emulating 64-bit binaries in user mode, TCG does not honor atomicity for 64-bit accesses, w

[PATCH v2 1/6] docs/about/deprecated: Deprecate the qemu-system-i386 binary

2023-03-02 Thread Thomas Huth
Hardly anybody really requires the i386 binary anymore, since the qemu-system-x86_64 binary is a proper superset. So let's deprecate the 32-bit variant now, so that we can finally stop wasting our time and CI minutes with this. With regards to 32-bit KVM support in the x86 Linux kernel, the develo

[PATCH v2 0/6] Deprecate support for 32-bit x86 and arm hosts

2023-03-02 Thread Thomas Huth
We're struggling quite badly with our CI minutes on the shared gitlab runners, so we urgently need to think of ways to cut down our supported build and target environments. qemu-system-i386 and qemu-system-arm are not really required anymore, since nobody uses KVM on the corresponding systems for p

[linux-linus test] 178951: regressions - trouble: fail/pass/starved

2023-03-02 Thread osstest service owner
flight 178951 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/178951/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-amd64-amd64-freebsd12-amd64 8 xen-boot fail REGR. vs. 178042 test-amd64-amd64-qe

Re: [PATCH v2 2/3] xen/riscv: initialize .bss section

2023-03-02 Thread Jan Beulich
On 02.03.2023 16:55, Oleksii wrote: > On Thu, 2023-03-02 at 15:22 +0100, Jan Beulich wrote: >> On 02.03.2023 14:23, Oleksii Kurochko wrote: >>> --- a/xen/arch/riscv/riscv64/head.S >>> +++ b/xen/arch/riscv/riscv64/head.S >>> @@ -13,6 +13,15 @@ ENTRY(start) >>> lla a6, _dtb_base >>>

Re: [PATCH v2 2/3] xen/riscv: initialize .bss section

2023-03-02 Thread Oleksii
On Thu, 2023-03-02 at 15:22 +0100, Jan Beulich wrote: > On 02.03.2023 14:23, Oleksii Kurochko wrote: > > --- a/xen/arch/riscv/riscv64/head.S > > +++ b/xen/arch/riscv/riscv64/head.S > > @@ -13,6 +13,15 @@ ENTRY(start) > > lla a6, _dtb_base > > REG_S   a1, (a6) > >   > > +  

Re: [PATCH v6 1/5] xen/arm32: head: Widen the use of the temporary mapping

2023-03-02 Thread Bertrand Marquis
Hi Julien, > On 2 Mar 2023, at 15:59, Julien Grall wrote: > > From: Julien Grall > > At the moment, the temporary mapping is only used when the virtual > runtime region of Xen is clashing with the physical region. > > In follow-up patches, we will rework how secondary CPU bring-up works > and

[RFC PATCH v1 13/25] hw/xen: Add xenstore operations to allow redirection to internal emulation

2023-03-02 Thread David Woodhouse
From: Paul Durrant Signed-off-by: Paul Durrant Signed-off-by: David Woodhouse --- accel/xen/xen-all.c | 11 +- hw/char/xen_console.c | 2 +- hw/i386/kvm/xen_xenstore.c | 3 - hw/i386/kvm/xenstore_impl.h | 8 +- hw/xen/xen-bus-helper.c

[RFC PATCH v1 22/25] hw/xen: Add emulated implementation of XenStore operations

2023-03-02 Thread David Woodhouse
From: David Woodhouse Now that we have an internal implementation of XenStore, we can populate the xenstore_backend_ops to allow PV backends to talk to it. Watches can't be processed with immediate callbacks because that would call back into XenBus code recursively. Defer them to a QEMUBH to be

[RFC PATCH v1 05/25] hw/xen: Watches on XenStore transactions

2023-03-02 Thread David Woodhouse
From: David Woodhouse Firing watches on the nodes that still exist is relatively easy; just walk the tree and look at the nodes with refcount of one. Firing watches on *deleted* nodes is more fun. We add 'modified_in_tx' and 'deleted_in_tx' flags to each node. Nodes with those flags cannot be sh

[RFC PATCH v1 24/25] hw/xen: Implement soft reset for emulated gnttab

2023-03-02 Thread David Woodhouse
From: David Woodhouse This is only part of it; we will also need to get the PV back end drivers to tear down their own mappings (or do it for them, but they kind of need to stop using the pointers too). Some more work on the actual PV back ends and xen-bus code is going to be needed to really ma

[RFC PATCH v1 21/25] hw/xen: Add emulated implementation of grant table operations

2023-03-02 Thread David Woodhouse
From: David Woodhouse This is limited to mapping a single grant at a time, because under Xen the pages are mapped *contiguously* into qemu's address space, and that's very hard to do when those pages actually come from anonymous mappings in qemu in the first place. Eventually perhaps we can look

[RFC PATCH v1 01/25] hw/xen: Add xenstore wire implementation and implementation stubs

2023-03-02 Thread David Woodhouse
From: David Woodhouse This implements the basic wire protocol for the XenStore commands, punting all the actual implementation to xs_impl_* functions which all just return errors for now. Signed-off-by: David Woodhouse --- hw/i386/kvm/meson.build | 1 + hw/i386/kvm/trace-events| 15

[RFC PATCH v1 07/25] hw/xen: Implement core serialize/deserialize methods for xenstore_impl

2023-03-02 Thread David Woodhouse
From: David Woodhouse In fact I think we want to only serialize the contents of the domain's path in /local/domain/${domid} and leave the rest to be recreated? Will defer to Paul for that. Signed-off-by: David Woodhouse --- hw/i386/kvm/xen_xenstore.c | 25 +- hw/i386/kvm/xenstore_impl.c | 57

[RFC PATCH v1 09/25] hw/xen: Add evtchn operations to allow redirection to internal emulation

2023-03-02 Thread David Woodhouse
From: David Woodhouse The existing implementation calling into the real libxenevtchn moves to a new file hw/xen/xen-operations.c, and is called via a function table which in a subsequent commit will also be able to invoke the emulated event channel support. Signed-off-by: David Woodhouse Signed

[RFC PATCH v1 04/25] hw/xen: Implement XenStore transactions

2023-03-02 Thread David Woodhouse
From: David Woodhouse Given that the whole thing supported copy on write from the beginning, transactions end up being fairly simple. On starting a transaction, just take a ref of the existing root; swap it back in on a successful commit. The main tree has a transaction ID too, and we keep a rec

[RFC PATCH v1 25/25] i386/xen: Initialize Xen backends from pc_basic_device_init() for emulation

2023-03-02 Thread David Woodhouse
From: David Woodhouse Now that all the work is done to enable the PV backends to work without actual Xen, instantiate the bus from pc_basic_device_init() for emulated mode. This allows us finally to launch an emulated Xen guest with PV disk. qemu-system-x86_64 -serial mon:stdio -M q35 -cpu h

[RFC PATCH v1 23/25] hw/xen: Map guest XENSTORE_PFN grant in emulated Xenstore

2023-03-02 Thread David Woodhouse
From: David Woodhouse Signed-off-by: David Woodhouse --- hw/i386/kvm/xen_xenstore.c | 16 1 file changed, 16 insertions(+) diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c index 028f80499e..f9b7387024 100644 --- a/hw/i386/kvm/xen_xenstore.c +++ b/hw/i386/kv

[RFC PATCH v1 00/25] Enable PV backends with Xen/KVM emulation

2023-03-02 Thread David Woodhouse
Now that the basic platform support is hopefully on the cusp of being merged, here's phase 2 which wires up the XenBus and PV back ends. It starts with a basic single-tenant internal implementation of a XenStore, with a copy-on-write tree, watches, transactions, quotas. Then we introduce operat

[RFC PATCH v1 10/25] hw/xen: Add gnttab operations to allow redirection to internal emulation

2023-03-02 Thread David Woodhouse
From: David Woodhouse Move the existing code using libxengnttab to xen-operations.c and allow the operations to be redirected so that we can add emulation of grant table mapping for backend drivers. In emulation, mapping more than one grant ref to be virtually contiguous would be fairly difficul

[RFC PATCH v1 11/25] hw/xen: Pass grant ref to gnttab unmap operation

2023-03-02 Thread David Woodhouse
From: David Woodhouse The previous commit introduced redirectable gnttab operations fairly much like-for-like, with the exception of the extra arguments to the ->open() call which were always NULL/0 anyway. This *changes* the arguments to the ->unmap() operation to include the original ref# that

[RFC PATCH v1 03/25] hw/xen: Implement XenStore watches

2023-03-02 Thread David Woodhouse
From: David Woodhouse Starts out fairly simple: a hash table of watches based on the path. Except there can be multiple watches on the same path, so the watch ends up being a simple linked list, and the head of that list is in the hash table. Which makes removal a bit of a PITA but it's not so b

[RFC PATCH v1 12/25] hw/xen: Add foreignmem operations to allow redirection to internal emulation

2023-03-02 Thread David Woodhouse
From: David Woodhouse Signed-off-by: David Woodhouse Signed-off-by: Paul Durrant --- hw/char/xen_console.c| 8 +++--- hw/display/xenfb.c | 20 +++--- hw/xen/xen-operations.c | 45 include/hw/xen/xen_backend_ops.h | 26

[RFC PATCH v1 14/25] hw/xen: Move xenstore_store_pv_console_info to xen_console.c

2023-03-02 Thread David Woodhouse
From: David Woodhouse There's no need for this to be in the Xen accel code, and as we want to use the Xen console support with KVM-emulated Xen we'll want to have a platform-agnostic version of it. Make it use GString to build up the path while we're at it. Signed-off-by: David Woodhouse --- a

[RFC PATCH v1 02/25] hw/xen: Add basic XenStore tree walk and write/read/directory support

2023-03-02 Thread David Woodhouse
From: David Woodhouse This is a fairly simple implementation of a copy-on-write tree. The node walk function starts off at the root, with 'inplace == true'. If it ever encounters a node with a refcount greater than one (including the root node), then that node is shared with other trees, and can

[RFC PATCH v1 17/25] hw/xen: Build PV backend drivers for CONFIG_XEN_BUS

2023-03-02 Thread David Woodhouse
From: David Woodhouse Now that we have the redirectable Xen backend operations we can build the PV backends even without the Xen libraries. Signed-off-by: David Woodhouse --- hw/9pfs/meson.build| 2 +- hw/block/dataplane/meson.build | 2 +- hw/block/meson.build | 2 +- hw

[RFC PATCH v1 08/25] hw/xen: Create initial XenStore nodes

2023-03-02 Thread David Woodhouse
From: Paul Durrant Signed-off-by: Paul Durrant Signed-off-by: David Woodhouse --- hw/i386/kvm/xen_xenstore.c | 70 ++ 1 file changed, 70 insertions(+) diff --git a/hw/i386/kvm/xen_xenstore.c b/hw/i386/kvm/xen_xenstore.c index 1b1358ad4c..5a8e38aae7 100644 -

[RFC PATCH v1 15/25] hw/xen: Use XEN_PAGE_SIZE in PV backend drivers

2023-03-02 Thread David Woodhouse
From: David Woodhouse XC_PAGE_SIZE comes from the actual Xen libraries, while XEN_PAGE_SIZE is provided by QEMU itself in xen_backend_ops.h. For backends which may be built for emulation mode, use the latter. Signed-off-by: David Woodhouse --- hw/block/dataplane/xen-block.c | 8 hw/d

[RFC PATCH v1 06/25] hw/xen: Implement XenStore permissions

2023-03-02 Thread David Woodhouse
From: Paul Durrant Store perms as a GList of strings, check permissions. Signed-off-by: Paul Durrant Signed-off-by: David Woodhouse --- hw/i386/kvm/xen_xenstore.c | 2 +- hw/i386/kvm/xenstore_impl.c | 259 +--- hw/i386/kvm/xenstore_impl.h | 8 +- tests/uni

[RFC PATCH v1 16/25] hw/xen: Rename xen_common.h to xen_native.h

2023-03-02 Thread David Woodhouse
From: David Woodhouse This header is now only for native Xen code, not PV backends that may be used in Xen emulation. Since the toolstack libraries may depend on the specific version of Xen headers that they pull in (and will set the __XEN_TOOLS__ macro to enable internal definitions that they de

[RFC PATCH v1 20/25] hw/xen: Hook up emulated implementation for event channel operations

2023-03-02 Thread David Woodhouse
From: David Woodhouse We provided the backend-facing evtchn functions very early on as part of the core Xen platform support, since things like timers and xenstore need to use them. By what may or may not be an astonishing coincidence, those functions just *happen* all to have exactly the right

[RFC PATCH v1 19/25] hw/xen: Only advertise ring-page-order for xen-block if gnttab supports it

2023-03-02 Thread David Woodhouse
From: David Woodhouse Whem emulating Xen, multi-page grants are distinctly non-trivial and we have elected not to support them for the time being. Don't advertise them to the guest. Signed-off-by: David Woodhouse --- hw/block/xen-block.c | 11 --- 1 file changed, 8 insertions(+), 3 del

[RFC PATCH v1 18/25] hw/xen: Avoid crash when backend watch fires too early

2023-03-02 Thread David Woodhouse
From: Paul Durrant The xen-block code ends up calling aio_poll() through blkconf_geometry(), which means we see watch events during the indirect call to xendev_class->realize() in xen_device_realize(). Unfortunately this call is made before populating the initial frontend and backend device nodes

RE: [PATCH v6 3/5] xen/arm64: mm: Introduce helpers to prepare/enable/disable the identity mapping

2023-03-02 Thread Henry Wang
Hi Julien, > -Original Message- > Subject: [PATCH v6 3/5] xen/arm64: mm: Introduce helpers to > prepare/enable/disable the identity mapping > > From: Julien Grall > > In follow-up patches we will need to have part of Xen identity mapped in > order to safely switch the TTBR. > > On some

Re: [XEN PATCH v7 13/20] xen/arm: ffa: support mapping guest RX/TX buffers

2023-03-02 Thread Bertrand Marquis
Hi Jens, > On 22 Feb 2023, at 16:33, Jens Wiklander wrote: > > Adds support in the mediator to map and unmap the RX and TX buffers > provided by the guest using the two FF-A functions FFA_RXTX_MAP and > FFA_RXTX_UNMAP. > > These buffer are later used to to transmit data that cannot be passed in

[PATCH v6 5/5] xen/arm64: smpboot: Directly switch to the runtime page-tables

2023-03-02 Thread Julien Grall
From: Julien Grall Switching TTBR while the MMU is on is not safe. Now that the identity mapping will not clash with the rest of the memory layout, we can avoid creating temporary page-tables every time a CPU is brought up. The arm32 code will use a different approach. So this issue is for now o

[PATCH v6 2/5] xen/arm64: Rework the memory layout

2023-03-02 Thread Julien Grall
From: Julien Grall Xen is currently not fully compliant with the Arm Arm because it will switch the TTBR with the MMU on. In order to be compliant, we need to disable the MMU before switching the TTBR. The implication is the page-tables should contain an identity mapping of the code switching th

[PATCH v6 4/5] xen/arm64: mm: Rework switch_ttbr()

2023-03-02 Thread Julien Grall
From: Julien Grall At the moment, switch_ttbr() is switching the TTBR whilst the MMU is still on. Switching TTBR is like replacing existing mappings with new ones. So we need to follow the break-before-make sequence. In this case, it means the MMU needs to be switched off while the TTBR is upda

[PATCH v6 3/5] xen/arm64: mm: Introduce helpers to prepare/enable/disable the identity mapping

2023-03-02 Thread Julien Grall
From: Julien Grall In follow-up patches we will need to have part of Xen identity mapped in order to safely switch the TTBR. On some platform, the identity mapping may have to start at 0. If we always keep the identity region mapped, NULL pointer dereference would lead to access to valid mapping

[PATCH v6 0/5] xen/arm: Don't switch TTBR while the MMU is on

2023-03-02 Thread Julien Grall
From: Julien Grall Hi all, Currently, Xen on Arm will switch TTBR whilst the MMU is on. This is similar to replacing existing mappings with new ones. So we need to follow a break-before-make sequence. When switching the TTBR, we need to temporarily disable the MMU before updating the TTBR. This

[PATCH v6 1/5] xen/arm32: head: Widen the use of the temporary mapping

2023-03-02 Thread Julien Grall
From: Julien Grall At the moment, the temporary mapping is only used when the virtual runtime region of Xen is clashing with the physical region. In follow-up patches, we will rework how secondary CPU bring-up works and it will be convenient to use the fixmap area for accessing the root page-tab

Re: [PATCH v2 2/3] xen/riscv: initialize .bss section

2023-03-02 Thread Oleksii
On Thu, 2023-03-02 at 14:12 +, Andrew Cooper wrote: > On 02/03/2023 1:23 pm, Oleksii Kurochko wrote: > > Signed-off-by: Oleksii Kurochko > > --- > > Changes since v1: > >  * initialization of .bss was moved to head.S > > --- > >  xen/arch/riscv/include/asm/asm.h | 4 > >  xen/arch/riscv/ri

Re: [PATCH v2 1/3] xen/riscv: read/save hart_id and dtb_base passed by bootloader

2023-03-02 Thread Oleksii
On Thu, 2023-03-02 at 14:02 +, Andrew Cooper wrote: > On 02/03/2023 1:23 pm, Oleksii Kurochko wrote: > > diff --git a/xen/arch/riscv/riscv64/head.S > > b/xen/arch/riscv/riscv64/head.S > > index ffd95f9f89..851b4691a5 100644 > > --- a/xen/arch/riscv/riscv64/head.S > > +++ b/xen/arch/riscv/riscv6

Re: [PATCH v1] xen/arm: align *(.proc.info) in the linker script

2023-03-02 Thread Julien Grall
Hi Oleksii, On 02/03/2023 07:34, Oleksii wrote: Hi Julien, On Wed, 2023-03-01 at 16:21 +, Julien Grall wrote: Hi Oleksii, On 01/03/2023 16:14, Oleksii Kurochko wrote: During testing of bug.h's macros generic implementation yocto- qemuarm job crashed with data abort: The commit message

[PATCH] x86emul: rework compiler probing in the test harness

2023-03-02 Thread Jan Beulich
Checking for what $(SIMD) contains was initially right, but already the addition of $(FMA) wasn't. Later categories (correctly) weren't added. Instead what is of interest is anything the main harness source file uses outside of suitable #if and without resorting to .byte, as that's the one file (co

Re: [PATCH v2 2/3] xen/riscv: initialize .bss section

2023-03-02 Thread Jan Beulich
On 02.03.2023 14:23, Oleksii Kurochko wrote: > --- a/xen/arch/riscv/riscv64/head.S > +++ b/xen/arch/riscv/riscv64/head.S > @@ -13,6 +13,15 @@ ENTRY(start) > lla a6, _dtb_base > REG_S a1, (a6) > > +la a3, __bss_start > +la a4, __bss_end > +

  1   2   >