lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250430202315.62bb1c1b@canb.auug.org.au>
Date: Wed, 30 Apr 2025 20:23:15 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Andreas Hindborg <a.hindborg@...nel.org>, Viresh Kumar
 <viresh.kumar@...aro.org>
Cc: Tamir Duberstein <tamird@...il.com>, Linux Kernel Mailing List
 <linux-kernel@...r.kernel.org>, Linux Next Mailing List
 <linux-next@...r.kernel.org>
Subject: linux-next: build failure after merge of the rust-xarray tree

Hi all,

After merging the rust-xarray tree, today's linux-next build (x86_64
allmodconfig) failed like this:

rror[E0308]: mismatched types
   --> rust/kernel/cpufreq.rs:633:37
    |
633 |             Some(unsafe { T::borrow(self.as_ref().driver_data) })
    |                           --------- ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `*mut <... as ForeignOwnable>::PointedTo`, found `*mut c_void`
    |                           |
    |                           arguments to this function are incorrect
    |
    = note: expected raw pointer `*mut <T as ForeignOwnable>::PointedTo`
               found raw pointer `*mut c_void`
note: associated function defined here
   --> rust/kernel/types.rs:98:15
    |
98  |     unsafe fn borrow<'a>(ptr: *mut Self::PointedTo) -> Self::Borrowed<'a>;
    |               ^^^^^^
help: consider constraining the associated type `<T as ForeignOwnable>::PointedTo` to `c_void`
    |
628 |     pub fn data<T: ForeignOwnable<PointedTo = c_void>>(&mut self) -> Option<<T>::Borrowed<'_>> {
    |                                  ++++++++++++++++++++

error[E0308]: mismatched types
   --> rust/kernel/cpufreq.rs:660:62
    |
660 |                 unsafe { <T as ForeignOwnable>::from_foreign(self.as_ref().driver_data) },
    |                          ----------------------------------- ^^^^^^^^^^^^^^^^^^^^^^^^^ expected `*mut <... as ForeignOwnable>::PointedTo`, found `*mut c_void`
    |                          |
    |                          arguments to this function are incorrect
    |
    = note: expected raw pointer `*mut <T as ForeignOwnable>::PointedTo`
               found raw pointer `*mut c_void`
note: associated function defined here
   --> rust/kernel/types.rs:63:15
    |
63  |     unsafe fn from_foreign(ptr: *mut Self::PointedTo) -> Self;
    |               ^^^^^^^^^^^^
help: consider constraining the associated type `<T as ForeignOwnable>::PointedTo` to `c_void`
    |
653 |     fn clear_data<T: ForeignOwnable<PointedTo = c_void>>(&mut self) -> Option<T> {
    |                                    ++++++++++++++++++++

error: aborting due to 2 previous errors

For more information about this error, try `rustc --explain E0308`.

Caused by commit

  a68f46e83747 ("rust: types: add `ForeignOwnable::PointedTo`")

interacting with commit

  254df142ab42 ("rust: cpufreq: Add initial abstractions for cpufreq framework")

from the cpufreq-arm tree.

I don't know how to fix this up, so I have dropped the rust-xarray tree
for today.

-- 
Cheers,
Stephen Rothwell

Content of type "application/pgp-signature" skipped

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ