[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2024061136-unbridle-confirm-c653@gregkh>
Date: Tue, 11 Jun 2024 15:29:22 +0200
From: Greg KH <gregkh@...uxfoundation.org>
To: Danilo Krummrich <dakr@...hat.com>
Cc: Boqun Feng <boqun.feng@...il.com>, rafael@...nel.org, mcgrof@...nel.org,
russell.h.weight@...el.com, ojeda@...nel.org, alex.gaynor@...il.com,
wedsonaf@...il.com, gary@...yguo.net, bjorn3_gh@...tonmail.com,
benno.lossin@...ton.me, a.hindborg@...sung.com,
aliceryhl@...gle.com, airlied@...il.com, fujita.tomonori@...il.com,
pstanner@...hat.com, ajanulgu@...hat.com, lyude@...hat.com,
rust-for-linux@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 1/2] rust: add abstraction for struct device
On Tue, Jun 11, 2024 at 03:21:31PM +0200, Danilo Krummrich wrote:
> ...hence, I agree we should indeed add to the #Invariants and #Safety section
> that `->release` must be callable from any thread.
>
> However, this is just theory, do we actually have cases where `device::release`
> is not allowed to be called from any thread? If so, this would be very confusing
> for a reference counted type from a design point of view...
What do you mean exactly "by any thread"? Maybe not from interrupt
context, but any other normal thread (i.e. that you can sleep in), it
should be fine to call release() in.
thanks,
greg k-h
Powered by blists - more mailing lists