Hi all,

I am happy to announce the 3.2.0 release of gfs2-utils. This is an important release adding support for new on-disk features introduced in the 4.16 kernel. In fact it is required when building against 4.16 and later kernel headers due to poor assumptions made by earlier gfs2-utils relating to structure size changes. Building earlier gfs2-utils against 4.16 headers will result in test suite failures. (Thanks to Valentin Vidic for reporting these issues.)

This release adds basic support for new gfs2 on-disk features:

  * Resource group header CRCs
  * "Next resource group" pointers in resource groups
  * Journal log header block CRCs
  * Journal log header timestamp fields
  * Statfs accounting fields in journal log headers

Future releases will build on this work to take advantage of these new features, particularly for improving checking and performance.

Other notable changes:

* mkfs.gfs2 now scales down the journal size to make better use of small devices by default
  * Better detection of bad device topology
  * fsck.gfs2 no longer accepts conflicting -p, -n and -y options
  * Saving of symlinks in gfs2_edit savemeta has been fixed
  * Fixes for issues caught by static analysis and new compiler warnings
  * New test cases in the testsuite
  * Various minor code cleanups and improvements

See below for a complete list of changes.

The source tarball is available from:

  https://releases.pagure.org/gfs2-utils/gfs2-utils-3.2.0.tar.gz

Please report bugs against the gfs2-utils component of Fedora rawhide: https://bugzilla.redhat.com/enter_bug.cgi?product=Fedora&component=gfs2-utils&version=rawhide

Regards,
Andy


Changes since version 3.1.10:

Andrew Price (66):
      gfs2_grow: Disable rgrp alignment when dev topology is unsuitable
      mkfs.gfs2: Free unnecessary cached pages, disable readahead
      mkfs.gfs2: Fix resource group alignment issue
      libgfs2: Issue one write per rgrp when creating them
      libgfs2: Switch gfs2_dinode_out to use a char buffer
      libgfs2: Switch gfs2_log_header_out to use a char buffer
      gfs2-utils: Change instances of "gfs2_fsck" to "fsck.gfs2"
      gfs2_convert: Fix fgets return value warning
      fsck.gfs2: Fix snprintf truncation warning
      fsck.gfs2: Fix unchecked return value warning
      gfs2_grow: Fix unchecked ftruncate return value warning
      gfs2_grow: Remove unnecessary nesting in fix_rindex()
      gfs2_edit savemeta: Fix up saving of dinodes/symlinks
      gfs2_edit savemeta: Use size_t for saved structure lengths
      fsck.gfs2: Make -p, -n and -y conflicting options
      gfs2_edit: Print offsets of indirect pointers
      gfs2-utils configure: Check for rg_skip
      libgfs2: Add rgrp_skip support
      mkfs.gfs2: Pull place_journals() out of place_rgrps()
      mkfs.gfs2: Set the rg_skip field in new rgrps
      gfs2-utils configure: Check for rg_data0, rg_data and rg_bitbytes
      libgfs2: Add support for rg_data0, rg_data and rg_bitbytes
      mkfs.gfs2: Set the rg_data0, rg_data and rg_bitbytes fields
      libgfs2: Add support for rg_crc
      Add basic support for v2 log headers
      mkfs.gfs2: Scale down journal size for smaller devices
      gfs2-utils: Remove make-tarball.sh
      glocktop: Remove a non-existent flag from the usage string
      fsck.gfs2: Don't check lh_crc for older filesystems
      libgfs2: Remove unused lock* fields from gfs2_sbd
      libgfs2: Remove sb_addr from gfs2_sbd
      libgfs2: Plug an alignment hole in gfs2_sbd
      libgfs2: Plug an alignment hole in gfs2_buffer_head
      libgfs2: Plug an alignment hole in gfs2_inode
      libgfs2: Remove gfs2_meta_header_out_bh()
      libgfs2: Don't pass an extlen to block_map where not required
      libgfs2: Don't use a buffer_head in gfs2_meta_header_in
      libgfs2: Don't use buffer_heads in gfs2_sb_in
      libgfs2: Don't use buffer_heads in gfs2_rgrp_in
      libgfs2: Remove gfs2_rgrp_out_bh
      libgfs2: Don't use buffer_heads in gfs2_dinode_in
      libgfs2: Remove gfs2_dinode_out_bh
      libgfs2: Don't use buffer_heads in gfs2_leaf_{in,out}
      libgfs2: Don't use buffer_heads in gfs2_log_header_in
      libgfs2: Remove gfs2_log_header_out_bh
      libgfs2: Don't use buffer_heads in gfs2_log_descriptor_{in,out}
      libgfs2: Don't use buffer_heads in gfs2_quota_change_{in,out}
      libgfs2: Fix two unused variable warnings
      mkfs.gfs2: Silence an integer overflow warning
      libgfs2: Fix a thinko in write_journal()
      gfs2-utils tests: Add a fsck.gfs2 test for rebuilding journals
      gfs2_edit: Fix null pointer deref in dump_journal()
      libgfs2: Remove dead code from gfs2_rgrp_read()
      fsck.gfs2: Avoid int overflow in find_next_rgrp_dist
      gfs2_edit: Avoid potential int overflow in find_journal_block()
      gfs2_edit: Avoid a potential int overflow in dump_journal
      gfs2-utils: Avoid some more potential in overflows
      libgfs2: Fix a memory leak in lgfs2_build_jindex
      glocktop: Fix memory leak in show_inode
      gfs2l: Remove some dead code from the interpreter loop
      glocktop: Fix new -Wformat-overflow warnings
      mkfs.gfs2: Zero blocks in alignment gaps
      libgfs2: Use sizeof for 'reserved' fields in ondisk.c
      tests: Add rg test scripts to EXTRA_DIST
      gfs2-utils: Use cluster-devel as contact address
      gfs2-utils: Update translation template

Valentin Vidic (5):
      gfs2_trace: update for python3
      gfs2_lockcapture: update for python3
      Fix spelling errors spotted by lintian
      mkfs.gfs2: fix tests call to gfs_max_blocks
      gfs2-utils tests: Fix testsuite cleanup

--
Linux-cluster mailing list
Linux-cluster@redhat.com
https://www.redhat.com/mailman/listinfo/linux-cluster

Reply via email to