linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Alice Ryhl <aliceryhl@google.com>
To: Dirk Behme <dirk.behme@gmail.com>
Cc: "Daniel Almeida" <daniel.almeida@collabora.com>,
	"Danilo Krummrich" <dakr@kernel.org>,
	"Benno Lossin" <lossin@kernel.org>,
	"Miguel Ojeda" <ojeda@kernel.org>,
	"Alex Gaynor" <alex.gaynor@gmail.com>,
	"Boqun Feng" <boqun.feng@gmail.com>,
	"Gary Guo" <gary@garyguo.net>,
	"Björn Roy Baron" <bjorn3_gh@protonmail.com>,
	"Andreas Hindborg" <a.hindborg@kernel.org>,
	"Trevor Gross" <tmgross@umich.edu>,
	"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	"Thomas Gleixner" <tglx@linutronix.de>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Krzysztof Wilczyński" <kwilczynski@kernel.org>,
	linux-kernel@vger.kernel.org, rust-for-linux@vger.kernel.org,
	linux-pci@vger.kernel.org
Subject: Re: [PATCH v6 3/6] rust: irq: add support for non-threaded IRQs and handlers
Date: Sat, 19 Jul 2025 10:56:17 +0200	[thread overview]
Message-ID: <CAH5fLgi7846Yi1tg1qAZFLhwkwtftZsdEdk4c6snQXtGyTFr8Q@mail.gmail.com> (raw)
In-Reply-To: <ce656239-08a1-49e8-86b1-b33d0cdfbcd3@gmail.com>

On Sat, Jul 19, 2025 at 7:47 AM Dirk Behme <dirk.behme@gmail.com> wrote:
>
> Hi Daniel,
>
> On 13.07.25 17:32, Daniel Almeida wrote:
> >
> >
> >> On 13 Jul 2025, at 12:28, Daniel Almeida <daniel.almeida@collabora.com> wrote:
> >>
> >>
> >>
> >>>
> >>> (2) Owning a reference count of a device (i.e. ARef<Device>) does *not*
> >>>     guarantee that the device is bound. You can own a reference count to the
> >>>     device object way beyond it being bound. Instead, the guarantee comes from
> >>>     the scope.
> >>>
> >>>     In this case, the scope is the IRQ callback, since the irq::Registration
> >>>     guarantees to call and complete free_irq() before the underlying bus
> >>>     device is unbound.
> >>>
> >>
> >>
> >> Oh, I see. I guess this is where I started to get a bit confused indeed.
> >>
> >> — Daniel
> >
> > Fine, I guess I can submit a newer version and test that on Tyr.
> >
> > Dirk, can you also test the next iteration on your driver? It will possibly
> > solve your use case as well.
>
>
> Now, I'm slightly confused ;) I just saw your version 7 of this
>
> [PATCH v7 3/6] rust: irq: add support for non-threaded IRQs and handlers
> https://lore.kernel.org/rust-for-linux/20250715-topics-tyr-request_irq2-v7-3-d469c0f37c07@collabora.com/
>
> and somehow was expecting something like
>
> fn handle(&self, dev: &Device<Bound>) -> IrqReturn
>
> there. I.e. to get a bound device passed into the handler.
>
> If I misunderstood the discussion and this is supposed to not be
> added: Any hint how to get the &Device<Bound> from the probe
> function/irq registration into the irq handler, then? To be able to do
> something like
>
> fn handle(&self) -> IrqReturn {
>   let dev = ??;
>   let io = self.iomem.access(dev);

Please see:
https://lore.kernel.org/all/CAH5fLgibCtmgFpKNrC+jcSEqSUctyVMuYwEC0QSo+vzyDXK0zg@mail.gmail.com/

Alice

  reply	other threads:[~2025-07-19  8:56 UTC|newest]

Thread overview: 60+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-03 19:29 [PATCH v6 0/6] rust: add support for request_irq Daniel Almeida
2025-07-03 19:29 ` [PATCH v6 1/6] rust: irq: add irq module Daniel Almeida
2025-07-04  7:43   ` Alice Ryhl
2025-07-03 19:30 ` [PATCH v6 2/6] rust: irq: add flags module Daniel Almeida
2025-07-04  6:14   ` Daniel Sedlak
2025-07-04  7:42     ` Alice Ryhl
2025-07-12 16:26       ` Daniel Almeida
2025-07-12 20:03         ` Alice Ryhl
2025-07-12 20:48           ` Daniel Almeida
2025-07-12 21:43             ` Alice Ryhl
2025-07-04  9:31     ` Miguel Ojeda
2025-07-03 19:30 ` [PATCH v6 3/6] rust: irq: add support for non-threaded IRQs and handlers Daniel Almeida
2025-07-04  7:51   ` Alice Ryhl
2025-07-07 16:18     ` Daniel Almeida
2025-07-07 20:30       ` Benno Lossin
2025-07-08 11:49         ` Alice Ryhl
2025-07-08 14:33           ` Benno Lossin
2025-07-04 16:39   ` Boqun Feng
2025-07-04 16:41     ` Boqun Feng
2025-07-07  7:20       ` Alice Ryhl
2025-07-08 12:15   ` Dirk Behme
2025-07-08 12:19     ` Danilo Krummrich
2025-07-12 21:24   ` Danilo Krummrich
2025-07-12 23:32     ` Daniel Almeida
2025-07-13 10:24       ` Danilo Krummrich
2025-07-13 11:19         ` Benno Lossin
2025-07-13 11:57           ` Danilo Krummrich
2025-07-13 12:16             ` Benno Lossin
2025-07-13 12:42               ` Danilo Krummrich
2025-07-13 14:09                 ` Daniel Almeida
2025-07-13 14:19                   ` Danilo Krummrich
2025-07-13 14:27                     ` Danilo Krummrich
2025-07-13 14:48                       ` Daniel Almeida
2025-07-13 15:02                         ` Danilo Krummrich
     [not found]                           ` <1F0227F0-8554-4DD2-BADE-0184D0824AF8@collabora.com>
2025-07-13 15:32                             ` Daniel Almeida
2025-07-19  5:47                               ` Dirk Behme
2025-07-19  8:56                                 ` Alice Ryhl [this message]
2025-07-20  0:45                                 ` Daniel Almeida
2025-07-14  7:57                     ` Dirk Behme
2025-07-14  9:36                       ` Danilo Krummrich
2025-07-13 15:29                 ` Benno Lossin
2025-07-13 17:20                   ` Danilo Krummrich
2025-07-14  6:42                 ` Boqun Feng
2025-07-14  9:24                   ` Danilo Krummrich
2025-07-14 10:29                     ` Danilo Krummrich
2025-07-14 15:12                 ` Daniel Almeida
2025-07-15  9:41                   ` Benno Lossin
2025-07-15 12:33                   ` Alice Ryhl
2025-07-15 12:37                     ` Danilo Krummrich
2025-07-03 19:30 ` [PATCH v6 4/6] rust: irq: add support for threaded " Daniel Almeida
2025-07-04  7:53   ` Alice Ryhl
2025-07-03 19:30 ` [PATCH v6 5/6] rust: platform: add irq accessors Daniel Almeida
2025-07-04  7:56   ` Alice Ryhl
2025-07-04 18:17     ` Danilo Krummrich
2025-07-04 18:23   ` Danilo Krummrich
2025-07-03 19:30 ` [PATCH v6 6/6] rust: pci: " Daniel Almeida
2025-07-04  7:56   ` Alice Ryhl
2025-07-04 18:19     ` Danilo Krummrich
2025-07-04 18:29   ` Danilo Krummrich
2025-07-03 20:13 ` [PATCH v6 0/6] rust: add support for request_irq Danilo Krummrich

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAH5fLgi7846Yi1tg1qAZFLhwkwtftZsdEdk4c6snQXtGyTFr8Q@mail.gmail.com \
    --to=aliceryhl@google.com \
    --cc=a.hindborg@kernel.org \
    --cc=alex.gaynor@gmail.com \
    --cc=bhelgaas@google.com \
    --cc=bjorn3_gh@protonmail.com \
    --cc=boqun.feng@gmail.com \
    --cc=dakr@kernel.org \
    --cc=daniel.almeida@collabora.com \
    --cc=dirk.behme@gmail.com \
    --cc=gary@garyguo.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=kwilczynski@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lossin@kernel.org \
    --cc=ojeda@kernel.org \
    --cc=rafael@kernel.org \
    --cc=rust-for-linux@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tmgross@umich.edu \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).