All of lore.kernel.org
 help / color / mirror / Atom feed
From: Link Mauve <linkmauve@linkmauve.fr>
To: Mukesh Kumar Chaurasiya <mkchauras@gmail.com>
Cc: Link Mauve <linkmauve@linkmauve.fr>,
	maddy@linux.ibm.com, mpe@ellerman.id.au, npiggin@gmail.com,
	chleroy@kernel.org, peterz@infradead.org, jpoimboe@kernel.org,
	jbaron@akamai.com, aliceryhl@google.com, rostedt@goodmis.org,
	ardb@kernel.org, ojeda@kernel.org, boqun@kernel.org,
	gary@garyguo.net, bjorn3_gh@protonmail.com, lossin@kernel.org,
	a.hindborg@kernel.org, tmgross@umich.edu, dakr@kernel.org,
	nathan@kernel.org, nick.desaulniers+lkml@gmail.com,
	morbo@google.com, justinstitt@google.com,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	rust-for-linux@vger.kernel.org, llvm@lists.linux.dev
Subject: Re: [PATCH V10 0/4] Rust support for powerpc [RESEND]
Date: Wed, 8 Apr 2026 15:19:57 +0200	[thread overview]
Message-ID: <adZV_VISz8DNraug@luna> (raw)
In-Reply-To: <adZBWoVVoJefiTcM@li-1a3e774c-28e4-11b2-a85c-acc9f2883e29.ibm.com>

On Wed, Apr 08, 2026 at 05:23:39PM +0530, Mukesh Kumar Chaurasiya wrote:
> On Wed, Apr 08, 2026 at 11:51:40AM +0200, Link Mauve wrote:
> > Hi,
> > 
> > (This email is a resent, my IP address got flagged by spamhaus again
> > because I’m on a residential range, hopefully this incident is
> > resolved…)
> > 
> > On Tue, Apr 07, 2026 at 01:31:45AM +0530, Mukesh Kumar Chaurasiya (IBM) wrote:
> > > Enable experimental rust support for ppc64le and ppc32be. The patch for
> > > ppc32 has been provided by Link Mauve[1] and ppc64le support[2] has been
> > > merged over it. ppc32 needs some toolchain fixes mentioned in the patch
> > > `rust: Add PowerPC support` and the discussion for that is done here[1].
> > > 
> > > This has been tested on
> > > - powernv9 hardware
> > > - pseries P11 hardware
> > > - pseries(9, 10) qemu
> > > - powernv(9, 10) qemu
> > > - rustdoc on x86 and powerpc64le
> > > - rusttest on x86 and powerpc64le
> > 
> > I just tested your series for the Wii, so targeting powerpc (32, be),
> > and got this error:
> > ```
> > error[E0463]: can't find crate for `pin_init_internal`
> >    --> ../rust/pin-init/src/lib.rs:365:11
> >     |
> > 365 | pub use ::pin_init_internal::pin_data;
> >     |           ^^^^^^^^^^^^^^^^^ can't find crate
> > 
> > error: aborting due to 1 previous error
> > 
> > For more information about this error, try `rustc --explain E0463`.
> > ```
> > 
> > I didn’t get this error in a previous version of your series, would you
> > want me to bisect them?
> > 
> > Thanks for your continuous work on it anyway!
> > 
> 
> Hey Link,
> 
> Thanks for testing this.
> 
> Can you give me the command generated via make with V=1
> e.g. `make LLVM=1 V=1`

Here it is:
```
% make ARCH=powerpc CROSS_COMPILE=powerpc-linux-musl- O=wii W=1 V=1 -j1
make  -C /home/linkmauve/dev/linux/wii \
-f /home/linkmauve/dev/linux/Makefile
make[1]: Entering directory '/home/linkmauve/dev/linux/wii'
make --no-print-directory -C /home/linkmauve/dev/linux/wii \
-f /home/linkmauve/dev/linux/Makefile
ln -fsn .. source
# GEN     Makefile
  { echo "# Automatically generated by /home/linkmauve/dev/linux/Makefile: don't edit"; echo "export KBUILD_OUTPUT = /home/linkmauve/dev/linux/wii"; echo "include /home/linkmauve/dev/linux/Makefile"; } > Makefile
test -e .gitignore || \
{ echo "# this is build directory, ignore it"; echo "*"; } > .gitignore
make -f ../scripts/Makefile.build obj=arch/powerpc/kernel/syscalls all
make -f ../scripts/Makefile.build obj=scripts/basic
make -f ../scripts/Makefile.build obj=scripts/dtc
make -f ../scripts/Makefile.build obj=scripts
make -f ../scripts/Makefile.build obj=scripts/gcc-plugins \
need-builtin= \
need-modorder= \

set -e; mkdir -p include/config/; trap "rm -f include/config/.tmp_kernel.release" EXIT; { ../scripts/setlocalversion ..; } > include/config/.tmp_kernel.release; if [ ! -r include/config/kernel.release ] || ! cmp -s include/config/kernel.release include/config/.tmp_kernel.release; then : '  UPD     include/config/kernel.release'; mv -f include/config/.tmp_kernel.release include/config/kernel.release; fi
make -f ../scripts/Makefile.asm-headers obj=arch/powerpc/include/generated/uapi/asm \
generic=include/uapi/asm-generic
make -f ../scripts/Makefile.asm-headers obj=arch/powerpc/include/generated/asm \
generic=include/asm-generic
set -e; mkdir -p include/generated/uapi/linux/; trap "rm -f include/generated/uapi/linux/.tmp_version.h" EXIT; { 	if [ 0 -gt 255 ]; then echo \#define LINUX_VERSION_CODE 459007; else echo \#define LINUX_VERSION_CODE 458752; fi; echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + ((c) > 255 ? 255 : (c)))'; echo \#define LINUX_VERSION_MAJOR 7; echo \#define LINUX_VERSION_PATCHLEVEL 0; echo \#define LINUX_VERSION_SUBLEVEL 0; } > include/generated/uapi/linux/.tmp_version.h; if [ ! -r include/generated/uapi/linux/version.h ] || ! cmp -s include/generated/uapi/linux/version.h include/generated/uapi/linux/.tmp_version.h; then : '  UPD     include/generated/uapi/linux/version.h'; mv -f include/generated/uapi/linux/.tmp_version.h include/generated/uapi/linux/version.h; fi
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_utsrelease.h" EXIT; { 	if [ `echo -n "7.0.0-rc7-wii+" | wc -c ` -gt 64 ]; then echo '"7.0.0-rc7-wii+" exceeds 64 characters' >&2; exit 1; fi; echo \#define UTS_RELEASE \"7.0.0-rc7-wii+\"; } > include/generated/.tmp_utsrelease.h; if [ ! -r include/generated/utsrelease.h ] || ! cmp -s include/generated/utsrelease.h include/generated/.tmp_utsrelease.h; then : '  UPD     include/generated/utsrelease.h'; mv -f include/generated/.tmp_utsrelease.h include/generated/utsrelease.h; fi
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_compile.h" EXIT; { ../scripts/mkcompile_h "ppc" "powerpc-linux-musl-gcc (GCC) 14.2.1 20250405" "powerpc-linux-musl-ld"; } > include/generated/.tmp_compile.h; if [ ! -r include/generated/compile.h ] || ! cmp -s include/generated/compile.h include/generated/.tmp_compile.h; then : '  UPD     include/generated/compile.h'; mv -f include/generated/.tmp_compile.h include/generated/compile.h; fi
../scripts/remove-stale-files
make -f ../scripts/Makefile.build obj=scripts/mod
set -e; mkdir -p scripts/mod/; trap "rm -f scripts/mod/.tmp_devicetable-offsets.h" EXIT; { 	 echo "#ifndef __DEVICETABLE_OFFSETS_H__"; echo "#define __DEVICETABLE_OFFSETS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne 	's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}' < scripts/mod/devicetable-offsets.s; echo ""; echo "#endif"; } > scripts/mod/.tmp_devicetable-offsets.h; if [ ! -r scripts/mod/devicetable-offsets.h ] || ! cmp -s scripts/mod/devicetable-offsets.h scripts/mod/.tmp_devicetable-offsets.h; then : '  UPD     scripts/mod/devicetable-offsets.h'; mv -f scripts/mod/.tmp_devicetable-offsets.h scripts/mod/devicetable-offsets.h; fi
make -f ../scripts/Makefile.build obj=. prepare
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_timeconst.h" EXIT; { echo 1000 | bc -q ../kernel/time/timeconst.bc; } > include/generated/.tmp_timeconst.h; if [ ! -r include/generated/timeconst.h ] || ! cmp -s include/generated/timeconst.h include/generated/.tmp_timeconst.h; then : '  UPD     include/generated/timeconst.h'; mv -f include/generated/.tmp_timeconst.h include/generated/timeconst.h; fi
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_bounds.h" EXIT; { 	 echo "#ifndef __LINUX_BOUNDS_H__"; echo "#define __LINUX_BOUNDS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne 	's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}' < kernel/bounds.s; echo ""; echo "#endif"; } > include/generated/.tmp_bounds.h; if [ ! -r include/generated/bounds.h ] || ! cmp -s include/generated/bounds.h include/generated/.tmp_bounds.h; then : '  UPD     include/generated/bounds.h'; mv -f include/generated/.tmp_bounds.h include/generated/bounds.h; fi
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_asm-offsets.h" EXIT; { 	 echo "#ifndef __ASM_OFFSETS_H__"; echo "#define __ASM_OFFSETS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne 	's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}' < arch/powerpc/kernel/asm-offsets.s; echo ""; echo "#endif"; } > include/generated/.tmp_asm-offsets.h; if [ ! -r include/generated/asm-offsets.h ] || ! cmp -s include/generated/asm-offsets.h include/generated/.tmp_asm-offsets.h; then : '  UPD     include/generated/asm-offsets.h'; mv -f include/generated/.tmp_asm-offsets.h include/generated/asm-offsets.h; fi
set -e; mkdir -p include/generated/; trap "rm -f include/generated/.tmp_rq-offsets.h" EXIT; { 	 echo "#ifndef __RQ_OFFSETS_H__"; echo "#define __RQ_OFFSETS_H__"; echo "/*"; echo " * DO NOT MODIFY."; echo " *"; echo " * This file was generated by Kbuild"; echo " */"; echo ""; sed -ne 	's:^[[:space:]]*\.ascii[[:space:]]*"\(.*\)".*:\1:; /^->/{s:->#\(.*\):/* \1 */:; s:^->\([^ ]*\) [\$#]*\([^ ]*\) \(.*\):#define \1 \2 /* \3 */:; s:->::; p;}' < kernel/sched/rq-offsets.s; echo ""; echo "#endif"; } > include/generated/.tmp_rq-offsets.h; if [ ! -r include/generated/rq-offsets.h ] || ! cmp -s include/generated/rq-offsets.h include/generated/.tmp_rq-offsets.h; then : '  UPD     include/generated/rq-offsets.h'; mv -f include/generated/.tmp_rq-offsets.h include/generated/rq-offsets.h; fi
# CALL    ../scripts/checksyscalls.sh
  sh ../scripts/checksyscalls.sh powerpc-linux-musl-gcc -Wp,-MMD,./.missing-syscalls.d -nostdinc -I../arch/powerpc/include -I./arch/powerpc/include/generated -I../include -I./include -I../arch/powerpc/include/uapi -I./arch/powerpc/include/generated/uapi -I../include/uapi -I./include/generated/uapi -include ../include/linux/compiler-version.h -include ../include/linux/kconfig.h -include ../include/linux/compiler_types.h -D__KERNEL__ -mbig-endian -m32 -I ../arch/powerpc -fmacro-prefix-map=../= -Wundef -DKBUILD_EXTRA_WARN1 -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -msoft-float -ffixed-r2 -mmultiple -mno-readonly-in-sdata -mcpu=powerpc -mno-prefixed -mno-pcrel -mno-altivec -mno-vsx -mno-mma -fno-asynchronous-unwind-tables -mno-string -mbig-endian -fno-delete-null-pointer-checks -Os -fno-allow-store-data-races -fno-stack-protector -fomit-frame-pointer -ftrivial-auto-var-init=zero -fno-stack-clash-protection -fmin-function-alignment=4 -fstrict-flex-arrays=3 -fms-extensions -fno-strict-overflow -fno-stack-check -fconserve-stack -fno-builtin-wcslen -Wall -Wextra -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=1280 -Wno-main -Wno-type-limits -Wno-dangling-pointer -Wvla-larger-than=1 -Wno-pointer-sign -Wcast-function-type -Wno-array-bounds -Wno-stringop-overflow -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wunused -Wmissing-format-attribute -Wmissing-include-dirs -Wunused-const-variable -Wno-missing-field-initializers -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -Wno-unused-parameter -DGCC_PLUGINS -I../. -I.    -DKBUILD_MODFILE='"./missing-syscalls"' -DKBUILD_BASENAME='"missing_syscalls"' -DKBUILD_MODNAME='"missing_syscalls"' -D__KBUILD_MODNAME=missing_syscalls
make -f ../scripts/Makefile.build obj=arch/powerpc/kernel/vdso include/generated/vdso32-offsets.h
mkdir -p ./tools
make O=/home/linkmauve/dev/linux/wii subdir=tools -C ../tools/ objtool
mkdir -p /home/linkmauve/dev/linux/wii/tools/objtool && make O=/home/linkmauve/dev/linux/wii subdir=tools/objtool --no-print-directory -C objtool
make -C /home/linkmauve/dev/linux/tools/build CFLAGS= LDFLAGS= /home/linkmauve/dev/linux/wii/tools/objtool/fixdep
if [ ! -f /home/linkmauve/dev/linux/wii/tools/objtool/fixdep ]; then						\
	make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=. obj=fixdep HOSTCFLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11   -I ../scripts/include";	\
	rm -f /home/linkmauve/dev/linux/wii/tools/objtool/fixdep.o;						\
fi
make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=. obj=fixdep HOSTCFLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11   -I ../scripts/include"
make -C /home/linkmauve/dev/linux/tools/lib/subcmd/ O=/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd \
	DESTDIR=/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd prefix= subdir= \
	CC="gcc" LD="ld" AR="ar" EXTRA_CFLAGS="-std=gnu11 -fomit-frame-pointer -O2 -g -Werror -Wall -Wextra -Wmissing-prototypes -Wmissing-declarations -Wwrite-strings -Wno-implicit-fallthrough -Wno-sign-compare -Wno-unused-parameter -I/home/linkmauve/dev/linux/tools/include -I/home/linkmauve/dev/linux/tools/include/uapi -I/home/linkmauve/dev/linux/tools/arch/x86/include/uapi -I/home/linkmauve/dev/linux/tools/arch/powerpc/include -I/home/linkmauve/dev/linux/tools/objtool/include -I/home/linkmauve/dev/linux/tools/objtool/arch/powerpc/include -I/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/include   " \
	/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/libsubcmd.a install_headers
make -C /home/linkmauve/dev/linux/tools/build CFLAGS= LDFLAGS= /home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/fixdep
if [ ! -f /home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/fixdep ]; then						\
	make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=. obj=fixdep HOSTCFLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11   -I ../scripts/include";	\
	rm -f /home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/fixdep.o;						\
fi
make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=. obj=fixdep HOSTCFLAGS="-Wall -Wmissing-prototypes -Wstrict-prototypes -O2 -fomit-frame-pointer -std=gnu11   -I ../scripts/include"
make[5]: 'install_headers' is up to date.
sh ./sync-check.sh
make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=. obj=objtool CC="gcc" LD="ld" AR="ar" CFLAGS="-std=gnu11 -fomit-frame-pointer -O2 -g -Werror -Wall -Wextra -Wmissing-prototypes -Wmissing-declarations -Wwrite-strings -Wno-implicit-fallthrough -Wno-sign-compare -Wno-unused-parameter -I/home/linkmauve/dev/linux/tools/include -I/home/linkmauve/dev/linux/tools/include/uapi -I/home/linkmauve/dev/linux/tools/arch/x86/include/uapi -I/home/linkmauve/dev/linux/tools/arch/powerpc/include -I/home/linkmauve/dev/linux/tools/objtool/include -I/home/linkmauve/dev/linux/tools/objtool/arch/powerpc/include -I/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/include   " \
	LDFLAGS="/home/linkmauve/dev/linux/wii/tools/objtool/libsubcmd/libsubcmd.a -lelf  "
make -f /home/linkmauve/dev/linux/tools/build/Makefile.build dir=./arch/powerpc obj=objtool
sh ../scripts/rust_is_available.sh
make -f ../scripts/Makefile.build obj=rust
# RUSTC L rust/pin_init.o
  OBJTREE=/home/linkmauve/dev/linux/wii rustc --edition=2021 -Zbinary_dep_depinfo=y -Astable_features -Aunused_features -Dnon_ascii_idents -Dunsafe_op_in_unsafe_fn -Wmissing_docs -Wrust_2018_idioms -Wunreachable_pub -Wclippy::all -Wclippy::as_ptr_cast_mut -Wclippy::as_underscore -Wclippy::cast_lossless -Wclippy::ignored_unit_patterns -Wclippy::mut_mut -Wclippy::needless_bitwise_bool -Aclippy::needless_lifetimes -Wclippy::no_mangle_with_rust_abi -Wclippy::ptr_as_ptr -Wclippy::ptr_cast_constness -Wclippy::ref_as_ptr -Wclippy::undocumented_unsafe_blocks -Wclippy::unnecessary_safety_comment -Wclippy::unnecessary_safety_doc -Wrustdoc::missing_crate_level_docs -Wrustdoc::unescaped_backticks -Cpanic=abort -Cembed-bitcode=n -Clto=n -Cforce-unwind-tables=n -Ccodegen-units=1 -Csymbol-mangling-version=v0 -Crelocation-model=static -Zfunction-sections=n -Wclippy::float_arithmetic --target=powerpc-unknown-linux-gnu -Copt-level=s -Cdebug-assertions=n -Coverflow-checks=y @./include/generated/rustc_cfg --extern pin_init_internal --extern macros --cfg='kernel' --emit=dep-info=rust/.pin_init.o.d --emit=obj=rust/pin_init.o --emit=metadata=rust/libpin_init.rmeta --crate-type rlib -L./rust --crate-name pin_init ../rust/pin-init/src/lib.rs --sysroot=/dev/null -Zunstable-options   ; ./tools/objtool/objtool --static-call   rust/pin_init.o
error[E0463]: can't find crate for `pin_init_internal`
   --> ../rust/pin-init/src/lib.rs:365:11
    |
365 | pub use ::pin_init_internal::pin_data;
    |           ^^^^^^^^^^^^^^^^^ can't find crate

error: aborting due to 1 previous error

For more information about this error, try `rustc --explain E0463`.
make[3]: *** [../rust/Makefile:681: rust/pin_init.o] Error 1
make[2]: *** [/home/linkmauve/dev/linux/Makefile:1343: prepare] Error 2
make[1]: *** [/home/linkmauve/dev/linux/Makefile:248: __sub-make] Error 2
make[1]: Leaving directory '/home/linkmauve/dev/linux/wii'
make: *** [Makefile:248: __sub-make] Error 2
make ARCH=powerpc CROSS_COMPILE=powerpc-linux-musl- O=wii W=1 V=1 -j1  1.15s user 0.56s system 100% cpu 1.695 total
```

> 
> Regards,
> Mukesh
> 
> > > 
> > > We are actively working with our LLVM team to get the target for ppc,
> > > ppc64 and ppc64le in the rust compiler.
> > > 
> > > 
> > > [1] https://lore.kernel.org/all/20260204030507.8203-1-linkmauve@linkmauve.fr
> > > [2] https://lore.kernel.org/all/20260204042417.83903-1-mkchauras@gmail.com
> > > 
> > > Changelog:
> > > V9 -> V10:
> > > - rust/Makefile updated with review comments from Miguel
> > > - Patch 1/4 updated with commit message and subject
> > > V9: https://lore.kernel.org/all/20260404121610.1956528-1-mkchauras@gmail.com/
> > > 
> > > V8 -> V9:
> > > - rust/Makefile updated with a directory instead of abspath
> > > V8: https://lore.kernel.org/all/20260403145308.1042622-1-mkchauras@gmail.com/
> > > 
> > > V7 -> V8:
> > > - rust/Makefile updated to separate host libraries from target
> > > V7: https://lore.kernel.org/all/20260329160254.2592207-1-mkchauras@gmail.com/
> > > 
> > > Changelog:
> > > V6 -> V7:
> > > - Documentation removed as powerpc is still under development
> > > - Added a fix for race condition in rust/Makefile
> > > V6: https://lore.kernel.org/all/20260210090023.2587534-1-mkchauras@gmail.com
> > > 
> > > V5 -> V6:
> > > - Added a missing Tested by from Venkat which got missed since V3
> > > - Support is marked as Maintained instead of experimental
> > > V5: https://lore.kernel.org/all/20260210053756.2088302-1-mkchauras@gmail.com
> > > 
> > > V4 -> V5:
> > > - Removed a nested ifdef from PPC64 for Little endian toolchain
> > > V4: https://lore.kernel.org/all/20260209105456.1551677-1-mkchauras@gmail.com
> > > 
> > > V3 -> V4:
> > > - Co-developed-by header added in patch 1
> > > V3: https://lore.kernel.org/all/20260205180429.3280657-1-mkchauras@gmail.com
> > > 
> > > V2 -> V3:
> > > - Splited HAVE_RUST in 2 lines
> > > - BINDGEN_TARGET_powerpc initialized before assigning the same to
> > >   BINDGEN_TARGET
> > > V2: https://lore.kernel.org/all/20260204210125.613350-1-mkchauras@gmail.com
> > > 
> > > V1 -> V2:
> > > - jump label fix for rust has been moved to a separate patch
> > > - PPC32 support has been taken
> > > - rust support has been marked experimental
> > > - target.json dependency has been removed
> > > - HAVE_RUST now depends on CPU_LITTLE_ENDIAN for PPC64
> > > 
> > > Link Mauve (1):
> > >   rust: Add PowerPC support
> > > 
> > > Mukesh Kumar Chaurasiya (IBM) (3):
> > >   rust: Fix "multiple candidates for rmeta dependency core" error
> > >   powerpc/jump_label: adjust inline asm to be consistent
> > >   powerpc: Enable Rust for ppc64le
> > > 
> > >  arch/powerpc/Kconfig                  |  2 +
> > >  arch/powerpc/Makefile                 |  7 +++
> > >  arch/powerpc/include/asm/jump_label.h | 23 ++++++----
> > >  rust/Makefile                         | 66 ++++++++++++++++-----------
> > >  4 files changed, 61 insertions(+), 37 deletions(-)
> > > 
> > > -- 
> > > 2.53.0
> > > 
> > > 
> > 
> > -- 
> > Link Mauve
> > 

-- 
Link Mauve

  reply	other threads:[~2026-04-08 13:20 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-06 20:01 [PATCH V10 0/4] Rust support for powerpc Mukesh Kumar Chaurasiya (IBM)
2026-04-06 20:01 ` [PATCH V10 1/4] rust: Separate host libraries to fix rmeta dependency conflict Mukesh Kumar Chaurasiya (IBM)
2026-04-06 20:01 ` [PATCH V10 2/4] powerpc/jump_label: adjust inline asm to be consistent Mukesh Kumar Chaurasiya (IBM)
2026-04-06 20:01 ` [PATCH V10 3/4] rust: Add PowerPC support Mukesh Kumar Chaurasiya (IBM)
2026-04-06 20:01 ` [PATCH V10 4/4] powerpc: Enable Rust for ppc64le Mukesh Kumar Chaurasiya (IBM)
2026-04-08  9:46 ` [PATCH V10 0/4] Rust support for powerpc Link Mauve
2026-04-08  9:51 ` [PATCH V10 0/4] Rust support for powerpc [RESEND] Link Mauve
2026-04-08 11:53   ` Mukesh Kumar Chaurasiya
2026-04-08 13:19     ` Link Mauve [this message]
2026-04-08 14:00       ` Gary Guo
2026-04-08 14:15         ` Mukesh Kumar Chaurasiya

Reply instructions:

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

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

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

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

  git send-email \
    --in-reply-to=adZV_VISz8DNraug@luna \
    --to=linkmauve@linkmauve.fr \
    --cc=a.hindborg@kernel.org \
    --cc=aliceryhl@google.com \
    --cc=ardb@kernel.org \
    --cc=bjorn3_gh@protonmail.com \
    --cc=boqun@kernel.org \
    --cc=chleroy@kernel.org \
    --cc=dakr@kernel.org \
    --cc=gary@garyguo.net \
    --cc=jbaron@akamai.com \
    --cc=jpoimboe@kernel.org \
    --cc=justinstitt@google.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=llvm@lists.linux.dev \
    --cc=lossin@kernel.org \
    --cc=maddy@linux.ibm.com \
    --cc=mkchauras@gmail.com \
    --cc=morbo@google.com \
    --cc=mpe@ellerman.id.au \
    --cc=nathan@kernel.org \
    --cc=nick.desaulniers+lkml@gmail.com \
    --cc=npiggin@gmail.com \
    --cc=ojeda@kernel.org \
    --cc=peterz@infradead.org \
    --cc=rostedt@goodmis.org \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=tmgross@umich.edu \
    /path/to/YOUR_REPLY

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

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.