Hi all,
Today's linux-next merge of the rust tree got a conflict in:
rust/kernel/init.rs
between commit:
a30e94c29673 ("rust: init: make doctests compilable/testable")
from the kunit-next tree and commit:
35e7fca2ff59 ("rust: init: add `..Zeroable::zeroed()` syntax for zeroing all missing fields")
from the rust tree.
I fixed it up (I think - see below) and can carry the fix as
necessary. This is now fixed as far as linux-next is concerned, but any
non trivial conflicts should be mentioned to your upstream maintainer
when your tree is submitted for merging. You may also want to consider
cooperating with the maintainer of the conflicting tree to minimise any
particularly complex conflicts.
--
Cheers,
Stephen Rothwell
diff --cc rust/kernel/init.rs
index e05563aad2ed,0071b2834b78..000000000000
--- a/rust/kernel/init.rs
+++ b/rust/kernel/init.rs
@@@ -522,9 -517,11 +526,10 @@@ macro_rules! stack_try_pin_init
/// For instance:
///
/// ```rust
- /// # use kernel::{macros::pin_data, pin_init};
-/// # use kernel::pin_init;
-/// # use macros::{Zeroable, pin_data};
++/// # use kernel::{macros::Zeroable, pin_data, pin_init};
/// # use core::{ptr::addr_of_mut, marker::PhantomPinned};
/// #[pin_data]
+ /// #[derive(Zeroable)]
/// struct Buf {
/// // `ptr` points into `buf`.
/// ptr: *mut u8,
On Tue, Aug 22, 2023 at 8:23 AM Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the rust tree got a conflict in:
Yeah, we expected this one when we applied an extra patch series
yesterday. I tested the merged trees to double-check the (now tested)
examples pass (i.e. the KUnit tree has a patch series which enables
the testing of the examples in the documentation of Rust code).
> - /// # use kernel::{macros::pin_data, pin_init};
> -/// # use kernel::pin_init;
> -/// # use macros::{Zeroable, pin_data};
> ++/// # use kernel::{macros::Zeroable, pin_data, pin_init};
Almost right :) It should be:
/// # use kernel::{macros::{Zeroable, pin_data}, pin_init};
In case it helps for future similar conflicts, the reason is that
there are 3 things we are "using" here:
kernel::macros::Zeroable
kernel::macros::pin_data
kernel::pin_init
Instead, the current resolution would mean:
kernel::macros::Zeroable
kernel::pin_data
kernel::pin_init
Thanks Stephen!
Cheers,
Miguel
Hi Miguel,
On Tue, 22 Aug 2023 10:15:44 +0200 Miguel Ojeda <miguel.ojeda.sandonis@gmail.com> wrote:
>
> On Tue, Aug 22, 2023 at 8:23 AM Stephen Rothwell <sfr@canb.auug.org.au> wrote:
> >
> > Today's linux-next merge of the rust tree got a conflict in:
>
> Yeah, we expected this one when we applied an extra patch series
> yesterday. I tested the merged trees to double-check the (now tested)
> examples pass (i.e. the KUnit tree has a patch series which enables
> the testing of the examples in the documentation of Rust code).
>
> > - /// # use kernel::{macros::pin_data, pin_init};
> > -/// # use kernel::pin_init;
> > -/// # use macros::{Zeroable, pin_data};
> > ++/// # use kernel::{macros::Zeroable, pin_data, pin_init};
>
> Almost right :) It should be:
>
> /// # use kernel::{macros::{Zeroable, pin_data}, pin_init};
>
> In case it helps for future similar conflicts, the reason is that
> there are 3 things we are "using" here:
>
> kernel::macros::Zeroable
> kernel::macros::pin_data
> kernel::pin_init
>
> Instead, the current resolution would mean:
>
> kernel::macros::Zeroable
> kernel::pin_data
> kernel::pin_init
Thanks for the explanation. I have updated my resolution for tomorrow.
--
Cheers,
Stephen Rothwell
On Tue, Aug 22, 2023 at 2:20 PM Stephen Rothwell <sfr@canb.auug.org.au> wrote: > > Thanks for the explanation. I have updated my resolution for tomorrow. My pleasure & thanks! Cheers, Miguel
On 8/22/23 09:17, Miguel Ojeda wrote: > On Tue, Aug 22, 2023 at 2:20 PM Stephen Rothwell <sfr@canb.auug.org.au> wrote: >> >> Thanks for the explanation. I have updated my resolution for tomorrow. > > My pleasure & thanks! > Is there anything I need to do on my end when I send kunit pull request? thanks, -- Shuah
Hi Shuah,
On Wed, Aug 23, 2023 at 6:08 PM Shuah Khan <skhan@linuxfoundation.org> wrote:
>
> Is there anything I need to do on my end when I send kunit pull
> request?
On our pull I will let Linus know about the conflict -- perhaps you
can point him to our PR if yours goes out later (when are you sending
it? I was planning to send mine tomorrow) and/or you can tell him the
expected resolution or to look into `linux-next`'s resolution, which
looks good to me:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/tree/rust/kernel/init.rs?h=next-20230823#n529
Cheers,
Miguel
On Wed, Aug 23, 2023 at 6:29 PM Miguel Ojeda
<miguel.ojeda.sandonis@gmail.com> wrote:
>
> On our pull I will let Linus know about the conflict -- perhaps you
> can point him to our PR if yours goes out later (when are you sending
> it? I was planning to send mine tomorrow) and/or you can tell him the
Here is the link to the PR in case you decide to refer Linus to it or similar:
https://lore.kernel.org/rust-for-linux/20230824214024.608618-1-ojeda@kernel.org/
Hope that helps!
Cheers,
Miguel
© 2016 - 2025 Red Hat, Inc.