Discussion
Loading...

#Tag

  • About
  • Code of conduct
  • Privacy
  • Users
  • Instances
  • About Bonfire
Michael Dexter boosted
Rob 💚
@robn@social.lol  ·  activity timestamp 4 days ago

Trying to make sense of all the relationships described in a big bundle of Makefiles? Don't! Draw them instead!

The #OpenZFS userspace components in the source tree have some fairly complicated interconnections, which I'm slowly working to disentangle. Some complexity is ok, but you want it to be clearly described and labelled. That's what I'm working towards.

It's hard to just open up all the makefiles and draw the connections in your head. It's made more difficult by some libtool quirks that can make surprising things happen when dynamic and static objects are mixed in together.

So, I wrote a little Perl program that scans all the Makefiles and builds up a map of all the interconnections, and then emits a Graphviz DOT file to draw it.

Here's the result! On the left, the linkages on the master branch right now; on the right, the vasty improved version from my cleanup branch (and still lots more to go).

Programs are green, dynamic libs are purple, static libs are orange. The arrow colour is a linkage to an object of that type. That red dashed line on the left is highlighting a place where a static lib is linking to a dynamic lib. This is the trigger for one of those surprising quirks, and it has to go.

I knew it was there from studying the library output, but I couldn't figure out how it was happening. It was worth the time to do this, and now I'm running it over and over as I make changes to peel away the layers.

So yeah, draw pictures. It's fun, and it helps!

Feel free to hack the script for your own ends, if you cbf making your own: https://gist.github.com/robn/7c27c71bdfa773953101de9f60daf0be

Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
BSD Fund
@bsdfund@mastodon.bsd.cafe  ·  activity timestamp 5 days ago

This #GivingTuesday we invite you to support all Call For Testing activities via https://bsdfund.org

Weekly #FreeBSD build option regressing tests
The Weekly Jails/Zones Production User Call
The Weekly #OpenZFS Production User Call
The Weekly #bhyve Production User Call
bhyvecon
The OpenZFS User and Developer Summit
BSDCan Fundraising
#BSDTV A/V package fundraising
Way too many conference talks

❤️

  • Copy link
  • Flag this post
  • Block
Michael Dexter
@dexter@bsd.network  ·  activity timestamp 4 days ago

WOW #Sylve by @hayzam is making good progress!

Now on to Jails support, including #Linux-compatible jails:

https://bsd.network/@dexter/115659210618375891

From the call, “I avoided FreeBSD 15.0 because I thought it would break things but it fixed lots of issues I was having!” (Paraphrased)

Thank you @FreeBSDFoundation for support his work!

#bhyve #Jails #OpenZFS trifecta

  • Copy link
  • Flag this post
  • Block
Rob 💚
@robn@social.lol  ·  activity timestamp 4 days ago

Trying to make sense of all the relationships described in a big bundle of Makefiles? Don't! Draw them instead!

The #OpenZFS userspace components in the source tree have some fairly complicated interconnections, which I'm slowly working to disentangle. Some complexity is ok, but you want it to be clearly described and labelled. That's what I'm working towards.

It's hard to just open up all the makefiles and draw the connections in your head. It's made more difficult by some libtool quirks that can make surprising things happen when dynamic and static objects are mixed in together.

So, I wrote a little Perl program that scans all the Makefiles and builds up a map of all the interconnections, and then emits a Graphviz DOT file to draw it.

Here's the result! On the left, the linkages on the master branch right now; on the right, the vasty improved version from my cleanup branch (and still lots more to go).

Programs are green, dynamic libs are purple, static libs are orange. The arrow colour is a linkage to an object of that type. That red dashed line on the left is highlighting a place where a static lib is linking to a dynamic lib. This is the trigger for one of those surprising quirks, and it has to go.

I knew it was there from studying the library output, but I couldn't figure out how it was happening. It was worth the time to do this, and now I'm running it over and over as I make changes to peel away the layers.

So yeah, draw pictures. It's fun, and it helps!

Feel free to hack the script for your own ends, if you cbf making your own: https://gist.github.com/robn/7c27c71bdfa773953101de9f60daf0be

Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components, after extensive cleanup. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
Diagram showing dependencies between various OpenZFS executable and library components. Description in the main post. The actual details are hard to describe here but not really relevant.
  • Copy link
  • Flag this post
  • Block
BSD Fund
@bsdfund@mastodon.bsd.cafe  ·  activity timestamp 5 days ago

This #GivingTuesday we invite you to support all Call For Testing activities via https://bsdfund.org

Weekly #FreeBSD build option regressing tests
The Weekly Jails/Zones Production User Call
The Weekly #OpenZFS Production User Call
The Weekly #bhyve Production User Call
bhyvecon
The OpenZFS User and Developer Summit
BSDCan Fundraising
#BSDTV A/V package fundraising
Way too many conference talks

❤️

  • Copy link
  • Flag this post
  • Block
Stefano Marinelli boosted
Michael Dexter
@dexter@bsd.network  ·  activity timestamp 3 weeks ago

The recording of the November 19th, 2025 #OpenZFS Production User Call is up:

https://youtu.be/JAAY87OIcJU

We discussed the OpenZFS 2.3.5 and 2.2.9 releases, upcoming 2.4 release, block cloning caveats, the "encryption bug" fix, Dan's pool shrinkage using VDEV removal and mirrored devices, 'zfs rewrite' AnyRaid and its uses and "tiles", and more!

"Don't forget to slam those Like and Subscribe buttons."

You can support all Call For Testing efforts via BSD Fund: https://bsdfund.org

  • Copy link
  • Flag this post
  • Block
Michael Dexter
@dexter@bsd.network  ·  activity timestamp 3 weeks ago

The recording of the November 19th, 2025 #OpenZFS Production User Call is up:

https://youtu.be/JAAY87OIcJU

We discussed the OpenZFS 2.3.5 and 2.2.9 releases, upcoming 2.4 release, block cloning caveats, the "encryption bug" fix, Dan's pool shrinkage using VDEV removal and mirrored devices, 'zfs rewrite' AnyRaid and its uses and "tiles", and more!

"Don't forget to slam those Like and Subscribe buttons."

You can support all Call For Testing efforts via BSD Fund: https://bsdfund.org

  • Copy link
  • Flag this post
  • Block
Stefano Marinelli
@stefano@mastodon.bsd.cafe  ·  activity timestamp 3 weeks ago

Another data corruption, fortunately not fatal, with btrfs. Two mirrored disks that have little activity. On the same server, Proxmox 9, there is also a ZFS pool (mirrored, more active). Same type of disks.

An employee mistakenly connected an electric heater to a socket protected by the UPS, and the server rebooted brutally.

Upon reboot, one of the two btrfs disks reported:

[ 167.015266] BTRFS error (device sdd): parent transid verify failed on 873906176 wanted 998679 found 998677
[ 167.017007] BTRFS error (device sdd): parent transid verify failed on 873906176 wanted 998679 found 998677
[ 167.052517] BTRFS error (device sdd): open_ctree failed mount: /btrfs: can't read superblock on /dev/sdd.

Result: unable to mount, even in degraded mode. The only way was to disconnect sdd and mount the other disk in degraded mode.

No issues with the ZFS pool.

Needless to say, I'm now copying the data to ZFS, and before tomorrow, these two disks will be a new ZFS pool.

#RunZFS #OpenZFS #btrfs #Linux #Proxmox

  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
OpenZFS
@openzfs@mastodon.social  ·  activity timestamp 3 weeks ago

We are please to announce the 2.2.9 release of #OpenZFS! Thank you everyone who helped make this possible!

https://github.com/openzfs/zfs/releases/tag/zfs-2.2.9

GitHub

Release zfs-2.2.9 · openzfs/zfs

Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+, 14.0+ Changes BRT: Fix ranges to blocks conversion math #17886 #17915 CI: Up...
  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
OpenZFS
@openzfs@mastodon.social  ·  activity timestamp 3 weeks ago

We are please to announce the 2.3.5 release of #OpenZFS! Thank you everyone who helped make this possible!

https://github.com/openzfs/zfs/releases/tag/zfs-2.3.5

GitHub

Release zfs-2.3.5 · openzfs/zfs

Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+, 14.0+ Changes FreeBSD: Satisfy ASSERT_VOP_IN_SEQC() #17722 CI: Update FreeBS...
  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
Rob 💚
@robn@social.lol  ·  activity timestamp 3 weeks ago

And for all you #OpenZFS stable-enjoyers (read: "normal people"), here's 2.3.5 and 2.2.9. Includes support for Linux 6.17 and FreeBSD 15, and the usual smattering of fixes and tweaks to keep everything ticking along nicely. Have fun!

https://github.com/openzfs/zfs/releases/tag/zfs-2.3.5
https://github.com/openzfs/zfs/releases/tag/zfs-2.2.9

  • Copy link
  • Flag this post
  • Block
OpenZFS
@openzfs@mastodon.social  ·  activity timestamp 3 weeks ago

We are please to announce the 2.2.9 release of #OpenZFS! Thank you everyone who helped make this possible!

https://github.com/openzfs/zfs/releases/tag/zfs-2.2.9

GitHub

Release zfs-2.2.9 · openzfs/zfs

Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+, 14.0+ Changes BRT: Fix ranges to blocks conversion math #17886 #17915 CI: Up...
  • Copy link
  • Flag this post
  • Block
OpenZFS
@openzfs@mastodon.social  ·  activity timestamp 3 weeks ago

We are please to announce the 2.3.5 release of #OpenZFS! Thank you everyone who helped make this possible!

https://github.com/openzfs/zfs/releases/tag/zfs-2.3.5

GitHub

Release zfs-2.3.5 · openzfs/zfs

Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+, 14.0+ Changes FreeBSD: Satisfy ASSERT_VOP_IN_SEQC() #17722 CI: Update FreeBS...
  • Copy link
  • Flag this post
  • Block
Rob 💚
@robn@social.lol  ·  activity timestamp 3 weeks ago

And for all you #OpenZFS stable-enjoyers (read: "normal people"), here's 2.3.5 and 2.2.9. Includes support for Linux 6.17 and FreeBSD 15, and the usual smattering of fixes and tweaks to keep everything ticking along nicely. Have fun!

https://github.com/openzfs/zfs/releases/tag/zfs-2.3.5
https://github.com/openzfs/zfs/releases/tag/zfs-2.2.9

  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
Rob 💚
@robn@social.lol  ·  activity timestamp 3 weeks ago

#OpenZFS 2.4.0-rc4 is here! We're getting closer to a final release, so this one is mostly about filing down some sharp edges and improve docs and build artifacts, but of course with some good bugfixes in the mix.

(I'm excited about a dev release, but I know you're probably not! Just go with it!)

Release notes: https://github.com/openzfs/zfs/releases/tag/zfs-2.4.0-rc4

Changelog since -rc3: https://github.com/openzfs/zfs/compare/zfs-2.4.0-rc3...zfs-2.4.0-rc4

GitHub

Release zfs-2.4.0-rc4 · openzfs/zfs

We are excited to announce the fourth release candidate (RC4) of OpenZFS 2.4.0! Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+...
  • Copy link
  • Flag this post
  • Block
Rob 💚
@robn@social.lol  ·  activity timestamp 3 weeks ago

#OpenZFS 2.4.0-rc4 is here! We're getting closer to a final release, so this one is mostly about filing down some sharp edges and improve docs and build artifacts, but of course with some good bugfixes in the mix.

(I'm excited about a dev release, but I know you're probably not! Just go with it!)

Release notes: https://github.com/openzfs/zfs/releases/tag/zfs-2.4.0-rc4

Changelog since -rc3: https://github.com/openzfs/zfs/compare/zfs-2.4.0-rc3...zfs-2.4.0-rc4

GitHub

Release zfs-2.4.0-rc4 · openzfs/zfs

We are excited to announce the fourth release candidate (RC4) of OpenZFS 2.4.0! Supported Platforms Linux: compatible with 4.18 - 6.17 kernels FreeBSD: compatible with releases starting from 13.3+...
  • Copy link
  • Flag this post
  • Block
Stefano Marinelli boosted
Michael Dexter
@dexter@bsd.network  ·  activity timestamp 3 weeks ago

The recording of the November 12th, 2025 #OpenZFS Production User Call is up:

https://youtu.be/HnwvL-CAt_Y

We discussed Dan's storage plan with regard to boot devices, the recent User and Developer Summit, the OpenZFS Test Suite, the zelta.space replication suite, user-space OpenZFS and its uses, web archives, and more!

"Don't forget to slam those Like and Subscribe buttons."

You can support all Call For Testing efforts via BSD Fund: https://bsdfund.org

  • Copy link
  • Flag this post
  • Block
Michael Dexter
@dexter@bsd.network  ·  activity timestamp 3 weeks ago

The recording of the November 12th, 2025 #OpenZFS Production User Call is up:

https://youtu.be/HnwvL-CAt_Y

We discussed Dan's storage plan with regard to boot devices, the recent User and Developer Summit, the OpenZFS Test Suite, the zelta.space replication suite, user-space OpenZFS and its uses, web archives, and more!

"Don't forget to slam those Like and Subscribe buttons."

You can support all Call For Testing efforts via BSD Fund: https://bsdfund.org

  • Copy link
  • Flag this post
  • Block
Stefano Marinelli
@stefano@mastodon.bsd.cafe  ·  activity timestamp 3 weeks ago

I've just used them, so time to repost this:

Enhancing FreeBSD Stability with ZFS Pool Checkpoints

https://it-notes.dragas.net/2024/07/01/enhancing-freebsd-stability-with-zfs-pool-checkpoints/

#FreeBSD #RunBSD #ZFS #OpenZFS

  • Copy link
  • Flag this post
  • Block
Michael Dexter boosted
Garrett Wollman
@wollman@mastodon.social  ·  activity timestamp 4 weeks ago

#OpenZFS question: is there a `zdb` invocation to efficiently generate a histogram of ZAP size in a dataset?

  • Copy link
  • Flag this post
  • Block
Log in

bonfire.cafe

A space for Bonfire maintainers and contributors to communicate

bonfire.cafe: About · Code of conduct · Privacy · Users · Instances
Bonfire social · 1.0.1-alpha.8 no JS en
Automatic federation enabled
  • Explore
  • About
  • Members
  • Code of Conduct
Home
Login