public inbox for llvm@lists.linux.dev
 help / color / mirror / Atom feed
From: Link Mauve <linkmauve@linkmauve.fr>
To: Gary Guo <gary@garyguo.net>
Cc: Link Mauve <linkmauve@linkmauve.fr>,
	Mukesh Kumar Chaurasiya <mkchauras@gmail.com>,
	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,
	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 V11 1/4] rust: Fix "multiple candidates for rmeta dependency core" error
Date: Tue, 21 Apr 2026 19:10:38 +0200	[thread overview]
Message-ID: <aeevjubaW30LP8Pi@luna> (raw)
In-Reply-To: <DHYZLGGNTTLL.AV3V11M454BO@garyguo.net>

On Tue, Apr 21, 2026 at 05:51:42PM +0100, Gary Guo wrote:
> On Tue Apr 21, 2026 at 5:36 PM BST, Link Mauve wrote:
> 
> > This works fine for the core crate, but now panic_qr also gets the same
> > issue, here it is with V=1:
> > ```
> > + powerpc-linux-musl-ld -EB -m elf32ppc -z noexecstack --no-warn-rwx-segments -Bstatic --build-id=sha1 --orphan-handling=warn --script=./arch/powerpc/kernel/vmlinux.lds --strip-debug -o .tmp_vmlinux1 --whole-archive vmlinux.a .vmlinux.export.o init/version-timestamp.o --no-whole-archive --start-group --end-group .tmp_vmlinux0.kallsyms.o
> > powerpc-linux-musl-ld: drivers/gpu/drm/drm_panic_qr.o: in function `<drm_panic_qr::SegmentIterator as core::iter::traits::iterator::Iterator>::next':
> > drm_panic_qr.f39a15fa3c72e9fe-cgu.0:(.text+0x200c): undefined reference to `__udivdi3'
> > ```
> >
> > From a cursory look at the SegmentIterator::next() function I don’t
> > understand where the division could come up, but it’s actually nice to
> > get an error when operations which shouldn’t happen happen anyway, it
> > makes it more likely to get them fixed.
> 
> There is divide / modular by 10 code. Although, this shouldn't really cause
> __udivdi3 to be generated for constant divisor, unless `-C opt-level=s` is used.
> Do you happen to use that opt-level?

Indeed that was it!

With CONFIG_CC_OPTIMIZE_FOR_SIZE=y the kernel is 4 MiB large, and with
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y it is 4.9 MiB large, but
CONFIG_DRM_PANIC_SCREEN_QR_CODE=y works.

As I target the Wii which has only 88 MiB of RAM, a difference of
920 KiB is actually quite important, and someone[1] is even making it
work on the GameCube and its 24 MiB of RAM where it becomes critical.

> 
> Best,
> Gary
> 

[1] https://github.com/Wii-Linux/wii-linux-ngx/pull/13#issuecomment-4233447365

-- 
Link Mauve

  reply	other threads:[~2026-04-21 17:10 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-17 15:22 [PATCH V11 0/4] Rust support for powerpc Mukesh Kumar Chaurasiya (IBM)
2026-04-17 15:22 ` [PATCH V11 1/4] rust: Fix "multiple candidates for rmeta dependency core" error Mukesh Kumar Chaurasiya (IBM)
2026-04-21  9:38   ` Link Mauve
2026-04-21  9:55     ` Mukesh Kumar Chaurasiya
2026-04-21 10:26       ` Link Mauve
2026-04-21 12:19         ` Mukesh Kumar Chaurasiya
2026-04-21 12:26           ` Link Mauve
2026-04-21 15:53             ` Mukesh Kumar Chaurasiya
2026-04-21 15:57               ` Gary Guo
2026-04-21 17:47                 ` Mukesh Kumar Chaurasiya
2026-04-21 18:10                   ` Gary Guo
2026-04-21 18:16                   ` Miguel Ojeda
2026-04-21 16:00               ` Miguel Ojeda
2026-04-21 17:28                 ` Mukesh Kumar Chaurasiya
2026-04-21 15:59         ` Gary Guo
2026-04-21 16:36           ` Link Mauve
2026-04-21 16:51             ` Gary Guo
2026-04-21 17:10               ` Link Mauve [this message]
2026-04-21 17:17                 ` Link Mauve
2026-04-17 15:22 ` [PATCH V11 2/4] powerpc/jump_label: adjust inline asm to be consistent Mukesh Kumar Chaurasiya (IBM)
2026-04-17 15:22 ` [PATCH V11 3/4] rust: Add PowerPC support Mukesh Kumar Chaurasiya (IBM)
2026-04-21 15:59   ` Gary Guo
2026-04-17 15:22 ` [PATCH V11 4/4] powerpc: Enable Rust for ppc64le Mukesh Kumar Chaurasiya (IBM)
2026-04-21 15:59   ` Gary Guo

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=aeevjubaW30LP8Pi@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox