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] [thread-next>] [day] [month] [year] [list]
Message-Id: <DB6JF2JLZEO8.4HZPDC26F3G8@kernel.org>
Date: Tue, 08 Jul 2025 10:40:34 +0200
From: "Danilo Krummrich" <dakr@...nel.org>
To: "Alistair Popple" <apopple@...dia.com>
Cc: <rust-for-linux@...r.kernel.org>, "Bjorn Helgaas" <bhelgaas@...gle.com>,
 Krzysztof Wilczyński <kwilczynski@...nel.org>, "Miguel
 Ojeda" <ojeda@...nel.org>, "Alex Gaynor" <alex.gaynor@...il.com>, "Boqun
 Feng" <boqun.feng@...il.com>, "Gary Guo" <gary@...yguo.net>,
 Björn Roy Baron <bjorn3_gh@...tonmail.com>, "Benno Lossin"
 <lossin@...nel.org>, "Andreas Hindborg" <a.hindborg@...nel.org>, "Alice
 Ryhl" <aliceryhl@...gle.com>, "Trevor Gross" <tmgross@...ch.edu>, "Greg
 Kroah-Hartman" <gregkh@...uxfoundation.org>, "Rafael J. Wysocki"
 <rafael@...nel.org>, "John Hubbard" <jhubbard@...dia.com>, "Alexandre
 Courbot" <acourbot@...dia.com>, <linux-pci@...r.kernel.org>,
 <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH 1/2] rust: Add dma_set_mask() and
 dma_set_coherent_mask() bindings

On Tue Jul 8, 2025 at 8:04 AM CEST, Alistair Popple wrote:
> Add bindings to allow setting the DMA masks for both a generic device
> and a PCI device.

Nice coincidence, I was about to get back to this. I already implemented this in
a previous patch [1], but didn't apply it yet.

I think the approach below is thought a bit too simple:

  (1) We want the DMA mask methods to be implemented by a trait in dma.rs.
      Subsequently, the trait should only be implemented by bus devices where
      the bus actually supports DMA. Allowing to set the DMA mask on any device
      doesn't make sense.

  (2) We need to consider that with this we do no prevent
      dma_set_coherent_mask() to concurrently with dma_alloc_coherent() (not
      even if we'd add a new `Probe` device context).

(2) is the main reason why I didn't follow up yet. So far I haven't found a nice
    solution for a sound API that doesn't need unsafe.

One thing I did consider was to have some kind of per device table (similar to
the device ID table) for drivers to specify the DMA mask already at compile
time. However, I'm pretty sure there are cases where the DMA mask has to derived
dynamically from probe().

I think I have to think a bit more about it.

[1] https://lore.kernel.org/all/20250317185345.2608976-7-abdiel.janulgue@gmail.com/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ