Re: [RFC PATCH 25/28] x86: Use PIE codegen for the core kernel

2024-10-05 Thread Uros Bizjak
On Fri, Oct 4, 2024 at 11:06 PM H. Peter Anvin wrote: > > On 10/3/24 04:13, Ard Biesheuvel wrote: > > > >> That said, doing changes like changing "mov $sym" to "lea sym(%rip)" I > >> feel are a complete no-brainer and should be done regardless of any > >> other code generation issues. > > > > Yes,

[linux-linus test] 187970: tolerable FAIL - PUSHED

2024-10-05 Thread osstest service owner
flight 187970 linux-linus real [real] flight 187980 linux-linus real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/187970/ http://logs.test-lab.xenproject.org/osstest/logs/187980/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-armhf-

Re: [PATCH 3/3] x86/boot: Use boot_vid_info and trampoline_phys variables directly from C code

2024-10-05 Thread Andrew Cooper
On 05/10/2024 9:02 am, Frediano Ziglio wrote: > diff --git a/xen/arch/x86/boot/head.S b/xen/arch/x86/boot/head.S > index ade2c5c43d..dcda91cfda 100644 > --- a/xen/arch/x86/boot/head.S > +++ b/xen/arch/x86/boot/head.S > @@ -510,22 +510,10 @@ trampoline_setup: > mov %esi, sym_esi(xen_phy

[xen-unstable test] 187979: tolerable FAIL - PUSHED

2024-10-05 Thread osstest service owner
flight 187979 xen-unstable real [real] flight 187984 xen-unstable real-retest [real] http://logs.test-lab.xenproject.org/osstest/logs/187979/ http://logs.test-lab.xenproject.org/osstest/logs/187984/ Failures :-/ but no regressions. Tests which are failing intermittently (not blocking): test-amd6

[PATCH 1/3] x86/boot: create a C bundle for 32 bit boot code and use it

2024-10-05 Thread Frediano Ziglio
The current method to include 32 bit C boot code is: - compile each function we want to use into a separate object file; - each function is compiled with -fpic option; - convert these object files to binary files. This operation removes GOP which we don't want in the executable; - a small assembl

[PATCH 3/3] x86/boot: Use boot_vid_info and trampoline_phys variables directly from C code

2024-10-05 Thread Frediano Ziglio
No more need to pass from assembly code. Signed-off-by: Frediano Ziglio --- xen/arch/x86/boot/build32.lds.S | 1 + xen/arch/x86/boot/head.S| 14 +- xen/arch/x86/boot/reloc.c | 19 ++- 3 files changed, 12 insertions(+), 22 deletions(-) diff --git a/xen/

[PATCH 0/3] Reuse 32 bit C code more safely

2024-10-05 Thread Frediano Ziglio
First version as no RFC. This series attempt to: - use more C code, that is replace some assembly code with C; - avoid some code duplication between C and assembly; - prevent some issues having relocations in C code. The idea is extending the current C to binary code conversion done for 32 bit C

[PATCH 2/3] x86/boot: Reuse code to relocate trampoline

2024-10-05 Thread Frediano Ziglio
Signed-off-by: Frediano Ziglio --- xen/arch/x86/boot/Makefile | 6 +++--- xen/arch/x86/boot/build32.lds.S | 5 + xen/arch/x86/boot/head.S | 23 + xen/arch/x86/boot/reloc-trampoline.c | 30 xen/arch/x86/efi/efi-boot.

[GIT PULL] xen: branch for v6.12-rc2

2024-10-05 Thread Juergen Gross
Linus, Please git pull the following tag: git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git for-linus-6.12a-rc2-tag xen: branch for v6.12-rc2 It contains just a single patch fixing an issue introduced in the 6.12 merge window. Thanks. Juergen drivers/xen/Kconfig | 2 +- 1 file cha

[PATCH 0/4] stubdom: prepare more fine grained Xen library usage

2024-10-05 Thread Juergen Gross
Prepare the build system of stubdoms to allow a more fine grained Xen library usage per stubdom (today its all or none). This is a first step to set the stage for related Mini-OS changes which are required to have stubdoms using e.g. only stable Xen libraries. Juergen Gross (4): stubdom: add lo

[PATCH 4/4] stubdom: add fine grained library config items to Mini-OS configs

2024-10-05 Thread Juergen Gross
Today Mini-OS can only be configured to use all or none Xen library. In order to prepare a more fine grained configuration scheme, add per library config items to the Mini-OS config files. As some libraries pull in others, the config files need to be extended at build time to reflect those indirec

[PATCH 1/4] stubdom: add local .gitignore file

2024-10-05 Thread Juergen Gross
Add a stubdom specfic .gitignore file. Signed-off-by: Juergen Gross --- .gitignore | 37 + stubdom/.gitignore | 36 2 files changed, 37 insertions(+), 36 deletions(-) create mode 100644 stubdom/.gitignore diff --g

[PATCH 3/4] build: move xenlibs-dependencies make definition to uselibs.mk

2024-10-05 Thread Juergen Gross
In order to be able to use the xenlibs-dependencies macro from stubdom build, move it to tools/libs/uselibs.mk, which is included from current users and stubdom/Makefile. No functional change intended. Signed-off-by: Juergen Gross --- tools/Rules.mk| 7 --- tools/libs/uselibs.mk | 7

[PATCH 2/4] stubdom: explcitly add libc and lwip Mini-OS config options

2024-10-05 Thread Juergen Gross
Today the Mini-OS build systems derives libc and lwip config options from the stubdom and LWIPDIR make variables supplied by the Xen build system. In order to prepare those being explicit Mini-OS config options, add them to the related stubdom Mini-OS config files. While at it remove the CONFIG_S

Re: [PATCH 1/3] x86/boot: create a C bundle for 32 bit boot code and use it

2024-10-05 Thread Andrew Cooper
On 05/10/2024 9:02 am, Frediano Ziglio wrote: > diff --git a/.gitignore b/.gitignore > index d88be80b28..d538c6adb1 100644 > --- a/.gitignore > +++ b/.gitignore > @@ -247,11 +247,10 @@ xen/.config > xen/.config.old > xen/.xen.elf32 > xen/System.map > -xen/arch/x86/boot/mkelf32 > +xen/arch/x86/bo

Re: [PATCH 2/3] x86/boot: Reuse code to relocate trampoline

2024-10-05 Thread Andrew Cooper
On 05/10/2024 9:02 am, Frediano Ziglio wrote: > Signed-off-by: Frediano Ziglio > --- > xen/arch/x86/boot/Makefile | 6 +++--- > xen/arch/x86/boot/build32.lds.S | 5 + > xen/arch/x86/boot/head.S | 23 + > xen/arch/x86/boot/reloc-trampoline.c | 3

Re: [GIT PULL] xen: branch for v6.12-rc2

2024-10-05 Thread pr-tracker-bot
The pull request you sent on Sat, 5 Oct 2024 17:04:31 +0200: > git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip.git > for-linus-6.12a-rc2-tag has been merged into torvalds/linux.git: https://git.kernel.org/torvalds/c/fc20a3e57247e21e1bd582f604b20bf898f7d111 Thank you! -- Deet-doot-dot,

Re: [RFC PATCH 25/28] x86: Use PIE codegen for the core kernel

2024-10-05 Thread Linus Torvalds
On Sat, 5 Oct 2024 at 16:37, H. Peter Anvin wrote: > > Sadly, that is not correct; neither gcc nor clang uses lea: Looking around, this may be intentional. At least according to Agner, several cores do better at "mov immediate" compared to "lea". Eg a RIP-relative LEA on Zen 2 gets a throughput

[linux-linus test] 187981: regressions - trouble: broken/fail/pass

2024-10-05 Thread osstest service owner
flight 187981 linux-linus real [real] http://logs.test-lab.xenproject.org/osstest/logs/187981/ Regressions :-( Tests which did not succeed and are blocking, including tests which could not be run: test-armhf-armhf-xl-raw broken test-armhf-armhf-xl-raw 5 host-insta

Re: [RFC PATCH 25/28] x86: Use PIE codegen for the core kernel

2024-10-05 Thread H. Peter Anvin
On 10/5/24 01:31, Uros Bizjak wrote: movq $sym to leaq sym(%rip) which you said ought to be smaller (and in reality appears to be the same size, 7 bytes) seems like a no-brainer and can be treated as a code quality issue -- in other words, file bug reports against gcc and clang. It is the kern