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-prev] [day] [month] [year] [list]
Message-ID: <2024122031-outfit-mop-86d0@gregkh>
Date: Fri, 20 Dec 2024 17:44:31 +0100
From: Greg KH <gregkh@...uxfoundation.org>
To: Danilo Krummrich <dakr@...nel.org>
Cc: rafael@...nel.org, bhelgaas@...gle.com, ojeda@...nel.org,
	alex.gaynor@...il.com, boqun.feng@...il.com, gary@...yguo.net,
	bjorn3_gh@...tonmail.com, benno.lossin@...ton.me, tmgross@...ch.edu,
	a.hindborg@...sung.com, aliceryhl@...gle.com, airlied@...il.com,
	fujita.tomonori@...il.com, lina@...hilina.net, pstanner@...hat.com,
	ajanulgu@...hat.com, lyude@...hat.com, robh@...nel.org,
	daniel.almeida@...labora.com, saravanak@...gle.com,
	dirk.behme@...bosch.com, j@...nau.net, fabien.parent@...aro.org,
	chrisi.schrefl@...il.com, paulmck@...nel.org,
	rust-for-linux@...r.kernel.org, linux-kernel@...r.kernel.org,
	linux-pci@...r.kernel.org, devicetree@...r.kernel.org,
	rcu@...r.kernel.org
Subject: Re: [PATCH v7 00/16] Device / Driver PCI / Platform Rust abstractions

On Thu, Dec 19, 2024 at 06:04:02PM +0100, Danilo Krummrich wrote:
> This patch series implements the necessary Rust abstractions to implement
> device drivers in Rust.
> 
> This includes some basic generalizations for driver registration, handling of ID
> tables, MMIO operations and device resource handling.
> 
> Those generalizations are used to implement device driver support for two
> busses, the PCI and platform bus (with OF IDs) in order to provide some evidence
> that the generalizations work as intended.
> 
> The patch series also includes two patches adding two driver samples, one PCI
> driver and one platform driver.
> 
> The PCI bits are motivated by the Nova driver project [1], but are used by at
> least one more OOT driver (rnvme [2]).
> 
> The platform bits, besides adding some more evidence to the base abstractions,
> are required by a few more OOT drivers aiming at going upstream, i.e. rvkms [3],
> cpufreq-dt [4], asahi [5] and the i2c work from Fabien [6].
> 
> The patches of this series can also be [7], [8] and [9].
> 
> Changes in v7:
> ==============
> - Revocable:
>   - replace `compare_exchange` with `swap`
> 
> - Driver:
>   - fix warning when CONFIG_OF=n
> 
> - I/O:
>   - remove unnecessary return statement in rust_helper_iounmap()
>   - fix cast in doctest for `bindings::ioremap`
> 
> - Devres:
>   - fix cast in doctest for `bindings::ioremap`
> 
> - PCI:
>   - remove `Deref` of `pci::DeviceId`
>   - rename `DeviceId` constructors
>     - `new`       -> `from_id`
>     - `with_class -> `from_class`
> 
> - MISC:
>   - use `kernel::ffi::c_*` instead of `core::ffi::c_*`
>   - rebase onto latest rust-next (0c5928deada15a8d075516e6e0d9ee19011bb000)

Thanks for this last round of changes, looks great to me!  I've added
them all to my driver-core-testing branch, and if 0-day doesn't
complain, will move it to driver-core-next for merging into 6.14-rc1.

Thanks for persisting with this, looks great.  Now the real work starts :)

thanks,

greg k-h

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ