<feed xmlns='http://www.w3.org/2005/Atom'>
<title>packages/utils/uvol/Makefile, branch master</title>
<subtitle>Mirror of packages feed</subtitle>
<id>https://git-03.infra.openwrt.org/feed/packages/atom?h=master</id>
<link rel='self' href='https://git-03.infra.openwrt.org/feed/packages/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/'/>
<updated>2026-07-25T22:53:57Z</updated>
<entry>
<title>uvol: bump version to 1.1</title>
<updated>2026-07-25T22:53:57Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2026-07-25T17:46:50Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=cb60600aec1b46b781c3bf72bdef2f4ce95fe9e1'/>
<id>urn:sha1:cb60600aec1b46b781c3bf72bdef2f4ce95fe9e1</id>
<content type='text'>
manage volume state over ubus instead of the rootfs

Rework the volume lifecycle around blockd's ubus API, so volume state
lives entirely on the self-describing LVM/UBI backing store and never
leaks into the firmware rootfs.

- register active volumes with blockd over ubus (mount.uc) instead of
  spooling mounts into /etc/config/fstab (uci.uc)

- bootstrap .meta from 'uvol boot' and drop the broken 90-uvol-init
  uci-default

- run 'uvol boot' straight from the mount.ready trigger, and query
  'ubus call block status' at service start to cover storage already
  being ready

- defer removal of a volume whose backing device is still held, and
  reap it from the mount.umount trigger once it is free

- enforce content-addressed "&lt;algo&gt;-&lt;hexdigest&gt;" volumes in the
  dispatcher: reuse an existing volume of the same digest, verify
  every write

- verify a content-addressed write in place while the volume is still
  incomplete, reporting EBADMSG on mismatch instead of flipping
  volume state

- purge incomplete wo/wp leftovers on boot and reclaim an exactly
  matching one on create

- serialise mutating commands with a device-wide lock, plus a
  per-volume lock ordered after it so a slow write cannot stall other
  volumes

- add a grow-only 'resize' verb to both backends: lvextend plus the
  matching fs-grow tool for lvm, ubirsvol for ubi

- create ext4 volumes with a journal (was ext2) and request check_fs
  when registering a read-write volume

- declare read-only mounts to blockd rather than letting block guess
  from the filesystem

- reject non-numeric and non-positive sizes in create and resize

- report its own version

- simplify command line parsing (drop compatibility with ancient ucode)

Requires the matching fstools changes from
openwrt/openwrt@9b11fa4088c6a.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: fix autopart on devices using fitblk</title>
<updated>2025-06-08T21:15:39Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2025-05-16T00:52:53Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=317598bed2a179e0c0e77f49cadc6a275db597a1'/>
<id>urn:sha1:317598bed2a179e0c0e77f49cadc6a275db597a1</id>
<content type='text'>
Correctly detect the block device used for booting also on devices
using the new fitblk driver.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: switch to /sys/class/ubi</title>
<updated>2023-02-15T04:06:36Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2023-02-15T04:04:12Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=3d86716b4f83aa827e0b28ba6d27a9c71855eb96'/>
<id>urn:sha1:3d86716b4f83aa827e0b28ba6d27a9c71855eb96</id>
<content type='text'>
Instead of /sys/devices/virtual/ubi which will no longer be available
in future kernels, switch to /sys/class/ubi.
While at it fix unrelated arithmetic syntax error by guarding the
affected expression to not run on an empty string.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: add missing quote</title>
<updated>2023-01-25T03:34:31Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2023-01-25T03:33:43Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=adce04d840ea0dee718455a51a576122c7a460a7'/>
<id>urn:sha1:adce04d840ea0dee718455a51a576122c7a460a7</id>
<content type='text'>
Add missing quote which broke the autopart script.

Fixes: b1edbe349 ("uvol: fix regression in handling fractional megabytes free")
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: fix regression in handling fractional megabytes free</title>
<updated>2023-01-23T01:31:52Z</updated>
<author>
<name>Philip Prindeville</name>
</author>
<published>2023-01-18T22:33:30Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=b1edbe349f9e70c72c4a48565a4fd37c94f20a0a'/>
<id>urn:sha1:b1edbe349f9e70c72c4a48565a4fd37c94f20a0a</id>
<content type='text'>
Also, fix off-by-one issue when computing free size.

Signed-off-by: Philip Prindeville &lt;philipp@redfish-solutions.com&gt;
</content>
</entry>
<entry>
<title>uvol: update to version 0.8</title>
<updated>2022-04-15T16:40:45Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-04-15T16:37:17Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=362ff12fb480152786cc64d22326f3790c408aca'/>
<id>urn:sha1:362ff12fb480152786cc64d22326f3790c408aca</id>
<content type='text'>
Bump version to reset PKG_RELEASE counter.
Add missing dependency on ucode-mod-math which is needed for the
mkdtemp() implementation used to format UBI volumes.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: fixes and adapt to in-tree ucode</title>
<updated>2022-04-04T10:29:12Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-04-03T15:13:45Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=74caff0d5988b721c08b9a8e35bce79a3d167dd6'/>
<id>urn:sha1:74caff0d5988b721c08b9a8e35bce79a3d167dd6</id>
<content type='text'>
Don't use features which are not yet present in the version of ucode
currently shipped with OpenWrt (such as `fs.access()` or assuming raw
mode by default).
Fix syntax error in main executable.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: unbreak build and adapt to updated ucode</title>
<updated>2022-03-31T21:28:27Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-03-31T20:41:17Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=22d202e3a56d6756543713ec2a2af3c65da31572'/>
<id>urn:sha1:22d202e3a56d6756543713ec2a2af3c65da31572</id>
<content type='text'>
 * Fix build which was broken by a wrong path in the Makefile.

Adapt to ucode commit 4618807 ("main: rework CLI frontend"):
 * ucode now no longer needs the {% %} around each code file, remove
   that and safe one level of indentation.
 * ARGV now no longer includes ucode executable and script itself

Fixes: 6350c7bc6 ("uvol: replace with re-write in ucode")
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: replace with re-write in ucode</title>
<updated>2022-03-31T17:45:22Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2022-03-31T16:51:22Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=6350c7bc63a1cf32e4ef9de42d2e47983df25932'/>
<id>urn:sha1:6350c7bc63a1cf32e4ef9de42d2e47983df25932</id>
<content type='text'>
Replace previous Shell draft-quality implementation of uvol with a
rewrite in ucode[1].
While the new code is slightly larger, it performs much better (as
we no longer fork() for parsing strings like in Shell with grep, sed
and friends).

Before:
  time uvol list -j
  [ ... ]
  real	0m 0.82s
  user	0m 0.13s
  sys	0m 0.10s

After:
  time uvol list -j
  [ ... ]
  real	0m 0.47s
  user	0m 0.05s
  sys	0m 0.05s

[1]: https://github.com/jow-/ucode
Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
<entry>
<title>uvol: update to 0.6</title>
<updated>2021-12-20T01:42:58Z</updated>
<author>
<name>Daniel Golle</name>
</author>
<published>2021-12-19T23:13:58Z</published>
<link rel='alternate' type='text/html' href='https://git-03.infra.openwrt.org/feed/packages/commit/?id=f8f5960e7617b15399b25d3701f587c7abf4a79c'/>
<id>urn:sha1:f8f5960e7617b15399b25d3701f587c7abf4a79c</id>
<content type='text'>
 * auto-created meta volume
Automatically create volume '.meta' sized 0.01% of the total space
managed by uvol, the minimum size being 4 MiB.
This volume should be used to keep metadata about stored volumes, such
as container runtime configuration (in /var/run/uvol/.meta/uxc) or
the database of installed container packages.

 * configurable LVM volume group
Allow setting volume group to be used by uvol using UCI.
This is useful on devices which do not boot off the device which
should be used for uvol and hence cannot make use of autopart and
physical volume detection based on kernel cmdline.
Use option vg_name in uvol section of fstab UCI config package.

Signed-off-by: Daniel Golle &lt;daniel@makrotopia.org&gt;
</content>
</entry>
</feed>
