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
next prev parent 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.