Description of problem:
fdisk makes invalid sgi disklabels - volume header is too large
Version-Release number of selected component (if applicable):
util-linux-2.12a-6 (and all earlier)
fdisk automatically allocates the volume header partition as a
fraction of available disk space; for large storage this can
result in a huge waste of space. Irix's "fx" tool defaults to
4k blocks, it makes sense for fdisk to do this as well. The
size can always be increased manually.
This patch has already been sent to Andries (util-linux maintainer):
--- util-linux-2.11y/fdisk/fdisksgilabel.c.orig 2004-06-08
+++ util-linux-2.11y/fdisk/fdisksgilabel.c 2004-06-08
@@ -632,8 +632,8 @@
* (like sash, symmon, fx, ide) with ca. 3200
- if( heads * sectors * 5 < sgi_get_lastblock() )
- sgi_set_partition( n, 0, heads * sectors * 5,
+ if( 4096 < sgi_get_lastblock() )
+ sgi_set_partition( n, 0, 4096, SGI_VOLHDR );
upstream parted also uses this same caculation.
(This is a bug in RHEL3 as well - if you can push the fix back there
too that'd be great.)
I'm wondering how to reconcile this change with the changes suggested
in #140437... Is there a conflict?
A RHEL3 erratum is extremely unlikely, but the fix definitely makes
sense for the devel tree.
It looks like fx will make the default volume header
4k sectors, regardless of sector size. So I don't think there's
anything to reconcile...?
Just a note as well, this fix has been accepted upstream.
I understand that there's not really a pressing issue here for your
It looks that the patch for this bug is missing in RHEL3 errata
(RHBA-2005:058-05) although the errata description text says something obverse.
It's fixed in devel/FC4 only. Well, definitely RHEL5 and status -> NEXTRELEASE.
An advisory has been issued which should help the problem
described in this bug report. This report is therefore being
closed with a resolution of ERRATA. For more information
on the solution and/or where to find the updated files,
please follow the link below. You may reopen this bug report
if the solution does not work for you.