Re: git: 8bae22bbbe65 - main - fusefs: prefer new/delete over malloc/free
- Reply: John Baldwin : "Re: git: 8bae22bbbe65 - main - fusefs: prefer new/delete over malloc/free"
- Reply: Warner Losh : "Re: git: 8bae22bbbe65 - main - fusefs: prefer new/delete over malloc/free"
- In reply to: Alan Somers : "Re: git: 8bae22bbbe65 - main - fusefs: prefer new/delete over malloc/free"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 19 Jan 2024 15:38:57 UTC
On Fri, Jan 19, 2024 at 6:56 AM Alan Somers <asomers@freebsd.org> wrote: > > On Thu, Jan 18, 2024 at 10:32 PM Enji Cooper <yaneurabeya@gmail.com> wrote: > > > > > > > On Jan 17, 2024, at 2:50 PM, Alan Somers <asomers@FreeBSD.org> wrote: > > > > > > The branch main has been updated by asomers: > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=8bae22bbbe6571da9259e0d43ffa8a56f4b3e171 > > > > > > commit 8bae22bbbe6571da9259e0d43ffa8a56f4b3e171 > > > Author: Alan Somers <asomers@FreeBSD.org> > > > AuthorDate: 2024-01-15 23:49:47 +0000 > > > Commit: Alan Somers <asomers@FreeBSD.org> > > > CommitDate: 2024-01-17 22:49:41 +0000 > > > > > > fusefs: prefer new/delete over malloc/free > > > > > > MFC after: 2 weeks > > > Reviewed by: kib > > > Differential Revision: https://reviews.freebsd.org/D43464 > > > > Why not use smart pointers instead? > > -Enji > > Only because this stuff all evolved from C code. Smart pointers would > certainly work. Actually, TBH it's because I'm not real great with C++. It's a difficult language, and after 2016 I stopped even trying to improve my C++ skills. Instead, I've been focusing on Rust. Even when I wrote these tests in 2019, I strongly considered using Rust instead of C++. In the end, the only thing that forced me to use C++ is because I wanted them to live in the base system, rather than in ports. I still dream about the day when Rust is allowed in the base system. If it were, then in addition to these tests, I would've converted gstat to Rust (rather than add sysutils/gstat-rs to ports), added the nfs-exporter (instead of putting it in net-mgmt/nfs-exporter), added a ctl-exporter (which is impossible to do in ports, so I had to do that one in C), and converted tools/regression/fsx in place (instead of putting in devel/fsx-rs). Maybe a couple of other things, too. Like ztop, or the geom-exporter that I have half-written. I've also been tempted to rewrite zfsd in Rust. Alas, I sense that there is little appetite for bringing Rust into contrib. -Alan