git: a8fd0a5f4423 - main - glabel: Remove support for old reiserfs
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 19 Apr 2024 22:49:00 UTC
The branch main has been updated by imp: URL: https://cgit.FreeBSD.org/src/commit/?id=a8fd0a5f4423637a73de390e65c0c1e00f0668ff commit a8fd0a5f4423637a73de390e65c0c1e00f0668ff Author: Ricardo Branco <rbranco@suse.de> AuthorDate: 2024-04-19 22:47:55 +0000 Commit: Warner Losh <imp@FreeBSD.org> CommitDate: 2024-04-19 22:48:28 +0000 glabel: Remove support for old reiserfs Reviewed by: imp, emaste Pull Request: https://github.com/freebsd/freebsd-src/pull/1101 --- lib/geom/label/glabel.8 | 5 +- sys/conf/files | 1 - sys/geom/label/g_label.c | 1 - sys/geom/label/g_label.h | 1 - sys/geom/label/g_label_reiserfs.c | 123 ----------------------------------- sys/modules/geom/geom_label/Makefile | 1 - 6 files changed, 1 insertion(+), 131 deletions(-) diff --git a/lib/geom/label/glabel.8 b/lib/geom/label/glabel.8 index a23f425bc5e1..a133b4abff72 100644 --- a/lib/geom/label/glabel.8 +++ b/lib/geom/label/glabel.8 @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd September 27, 2023 +.Dd April 19, 2024 .Dt GLABEL 8 .Os .Sh NAME @@ -113,9 +113,6 @@ CD ISO9660 (directory EXT2FS (directory .Pa /dev/ext2fs/ ) . .It -REISERFS (directory -.Pa /dev/reiserfs/ ) . -.It NTFS (directory .Pa /dev/ntfs/ ) . .El diff --git a/sys/conf/files b/sys/conf/files index 27ef78e51001..59d99b9f832b 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -3646,7 +3646,6 @@ geom/label/g_label_flashmap.c optional geom_label geom/label/g_label_iso9660.c optional geom_label geom/label/g_label_msdosfs.c optional geom_label geom/label/g_label_ntfs.c optional geom_label -geom/label/g_label_reiserfs.c optional geom_label geom/label/g_label_ufs.c optional geom_label geom/label/g_label_gpt.c optional geom_label | geom_label_gpt geom/label/g_label_disk_ident.c optional geom_label diff --git a/sys/geom/label/g_label.c b/sys/geom/label/g_label.c index a38ed8294202..e20e5b50e80b 100644 --- a/sys/geom/label/g_label.c +++ b/sys/geom/label/g_label.c @@ -101,7 +101,6 @@ const struct g_label_desc *g_labels[] = { &g_label_iso9660, &g_label_msdosfs, &g_label_ext2fs, - &g_label_reiserfs, &g_label_ntfs, &g_label_disk_ident, &g_label_flashmap, diff --git a/sys/geom/label/g_label.h b/sys/geom/label/g_label.h index baca2b71c02f..69bfbf3910a1 100644 --- a/sys/geom/label/g_label.h +++ b/sys/geom/label/g_label.h @@ -73,7 +73,6 @@ extern struct g_label_desc g_label_ufs_volume; extern struct g_label_desc g_label_iso9660; extern struct g_label_desc g_label_msdosfs; extern struct g_label_desc g_label_ext2fs; -extern struct g_label_desc g_label_reiserfs; extern struct g_label_desc g_label_ntfs; extern struct g_label_desc g_label_gpt; extern struct g_label_desc g_label_gpt_uuid; diff --git a/sys/geom/label/g_label_reiserfs.c b/sys/geom/label/g_label_reiserfs.c deleted file mode 100644 index f70ad43d3998..000000000000 --- a/sys/geom/label/g_label_reiserfs.c +++ /dev/null @@ -1,123 +0,0 @@ -/*- - * SPDX-License-Identifier: BSD-2-Clause - * - * Copyright (c) 2005 Stanislav Sedov - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND - * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE - * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE - * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL - * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS - * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) - * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT - * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY - * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF - * SUCH DAMAGE. - */ - -#include <sys/param.h> -#include <sys/systm.h> -#include <sys/kernel.h> -#include <sys/malloc.h> - -#include <geom/geom.h> -#include <geom/geom_dbg.h> -#include <geom/label/g_label.h> - -#define REISERFS_NEW_DISK_OFFSET 64 * 1024 -#define REISERFS_OLD_DISK_OFFSET 8 * 1024 -#define REISERFS_SUPER_MAGIC "ReIsEr" - -typedef struct reiserfs_sb { - uint8_t fake1[52]; - char s_magic[10]; - uint8_t fake2[10]; - uint16_t s_version; - uint8_t fake3[26]; - char s_volume_name[16]; -} reiserfs_sb_t; - -static reiserfs_sb_t * -g_label_reiserfs_read_super(struct g_consumer *cp, off_t offset) -{ - reiserfs_sb_t *fs; - u_int secsize; - - secsize = cp->provider->sectorsize; - - KASSERT(secsize != 0, ("Tasting a disk with 0 sectorsize")); - if (secsize < sizeof(*fs)) - return (NULL); - if ((offset % secsize) != 0) - return (NULL); - - fs = g_read_data(cp, offset, secsize, NULL); - if (fs == NULL) - return (NULL); - - if (strncmp(fs->s_magic, REISERFS_SUPER_MAGIC, - strlen(REISERFS_SUPER_MAGIC)) != 0) { - g_free(fs); - return (NULL); - } - - return (fs); -} - -static void -g_label_reiserfs_taste(struct g_consumer *cp, char *label, size_t size) -{ - struct g_provider *pp; - reiserfs_sb_t *fs; - - g_topology_assert_not(); - pp = cp->provider; - label[0] = '\0'; - - /* Try old format */ - fs = g_label_reiserfs_read_super(cp, REISERFS_OLD_DISK_OFFSET); - if (fs == NULL) { - /* Try new format */ - fs = g_label_reiserfs_read_super(cp, REISERFS_NEW_DISK_OFFSET); - } - if (fs == NULL) - return; - - /* Check version */ - if (fs->s_version == 2) { - G_LABEL_DEBUG(1, "reiserfs file system detected on %s.", - pp->name); - } else { - goto exit_free; - } - - /* Check for volume label */ - if (fs->s_volume_name[0] == '\0') - goto exit_free; - - /* Terminate label */ - fs->s_volume_name[sizeof(fs->s_volume_name) - 1] = '\0'; - strlcpy(label, fs->s_volume_name, size); - -exit_free: - g_free(fs); -} - -struct g_label_desc g_label_reiserfs = { - .ld_taste = g_label_reiserfs_taste, - .ld_dirprefix = "reiserfs/", - .ld_enabled = 1 -}; - -G_LABEL_INIT(reiserfs, g_label_reiserfs, "Create device nodes for REISERFS volumes"); diff --git a/sys/modules/geom/geom_label/Makefile b/sys/modules/geom/geom_label/Makefile index 4ed9c6e5630e..19e0ee446fa1 100644 --- a/sys/modules/geom/geom_label/Makefile +++ b/sys/modules/geom/geom_label/Makefile @@ -10,7 +10,6 @@ SRCS+= g_label_gpt.c SRCS+= g_label_iso9660.c SRCS+= g_label_msdosfs.c SRCS+= g_label_ntfs.c -SRCS+= g_label_reiserfs.c SRCS+= g_label_ufs.c SRCS+= opt_geom.h SRCS+= vnode_if.h