summaryrefslogtreecommitdiffstats
path: root/sys/geom
diff options
context:
space:
mode:
authortrasz <trasz@FreeBSD.org>2012-05-24 16:48:33 +0000
committertrasz <trasz@FreeBSD.org>2012-05-24 16:48:33 +0000
commitfa26d41fa3872963b571cdc0e9268656dbfaca4c (patch)
tree26b88727e94cfb9f94ce4f862ccb24634fc4ce2b /sys/geom
parentbbf3b9348d561c7c86b6ff80193ad674bff7fc93 (diff)
downloadFreeBSD-src-fa26d41fa3872963b571cdc0e9268656dbfaca4c.zip
FreeBSD-src-fa26d41fa3872963b571cdc0e9268656dbfaca4c.tar.gz
Make g_label(4) ignore provider size when looking for UFS labels.
Without it, it fails to create labels for filesystems resized by growfs(8). PR: kern/165962 Submitted by: Olivier Cochard-Labbe <olivier at cochard dot me>
Diffstat (limited to 'sys/geom')
-rw-r--r--sys/geom/label/g_label_ufs.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/sys/geom/label/g_label_ufs.c b/sys/geom/label/g_label_ufs.c
index b9b0443..6035a6a 100644
--- a/sys/geom/label/g_label_ufs.c
+++ b/sys/geom/label/g_label_ufs.c
@@ -81,12 +81,10 @@ g_label_ufs_taste_common(struct g_consumer *cp, char *label, size_t size, int wh
fs = (struct fs *)g_read_data(cp, superblock, SBLOCKSIZE, NULL);
if (fs == NULL)
continue;
- /* Check for magic and make sure things are the right size */
- if (fs->fs_magic == FS_UFS1_MAGIC && fs->fs_fsize > 0 &&
- pp->mediasize / fs->fs_fsize == fs->fs_old_size) {
+ /* Check for magic */
+ if (fs->fs_magic == FS_UFS1_MAGIC && fs->fs_fsize > 0) {
/* Valid UFS1. */
- } else if (fs->fs_magic == FS_UFS2_MAGIC && fs->fs_fsize > 0 &&
- pp->mediasize / fs->fs_fsize == fs->fs_size) {
+ } else if (fs->fs_magic == FS_UFS2_MAGIC && fs->fs_fsize > 0) {
/* Valid UFS2. */
} else {
g_free(fs);
OpenPOWER on IntegriCloud