Re: [RFC 4/5] rust: sync: impl Debug for {Unique,}Arc

From: Boqun Feng
Date: Fri Feb 03 2023 - 14:46:21 EST


On Thu, Feb 02, 2023 at 02:28:04PM +0000, Gary Guo wrote:
> On Wed, 1 Feb 2023 15:22:43 -0800
> Boqun Feng <boqun.feng@xxxxxxxxx> wrote:
>
> > This allows printing macros to print the data and the refcount nubmer
> > of these struct for debugging purposes.
> >
> > Signed-off-by: Boqun Feng <boqun.feng@xxxxxxxxx>
> > ---
> > rust/kernel/sync/arc.rs | 13 +++++++++++++
> > 1 file changed, 13 insertions(+)
> >
> > diff --git a/rust/kernel/sync/arc.rs b/rust/kernel/sync/arc.rs
> > index 4d8de20c996f..f143d8305c36 100644
> > --- a/rust/kernel/sync/arc.rs
> > +++ b/rust/kernel/sync/arc.rs
> > @@ -474,6 +474,7 @@ impl<T: ?Sized> Deref for ArcBorrow<'_, T> {
> > ///
> > /// # test().unwrap();
> > /// ```
> > +#[derive(Debug)]
>
> I don't think this should be a `#[derive(Debug)]`. For `UniqueArc` the
> refcount field in `Arc` is useless, and we should just delegate the
> `Debug` impl to that of deref, just like `Display` does.
>

I was just being lazy ;-) Will change this in v2.

Regards,
Boqun

> Best,
> Gary