diff options
author | Warner Losh <imp@FreeBSD.org> | 2017-08-09 16:15:24 +0000 |
---|---|---|
committer | Warner Losh <imp@FreeBSD.org> | 2017-08-09 16:15:24 +0000 |
commit | 20995eab57202e64360e91d4c3fab4b4f7e7bfd5 (patch) | |
tree | daf10093e8ba9cb16440716aace723772f3a2cce /sys/geom | |
parent | 2b2a6eb95e9c91b34acb71e038725c9fe537b8a8 (diff) | |
download | src-20995eab57202e64360e91d4c3fab4b4f7e7bfd5.tar.gz src-20995eab57202e64360e91d4c3fab4b4f7e7bfd5.zip |
Mark geom classes as deprecated.
geom_bsd, geom_mbr and geom_sunlabel have been obsolete since Marcel
Moolenaar's geom_part was in FreeBSD 7. They haven't been in GENERIC
since FreeBSD 8. Add warning when used.
geom_vol_ffs has been obsolete since ufs support to geom_label was
committed in FreeBSD 5. It hasn't been in GENERIC since FreeBSD 5.
Add warning when used.
geom_fox has been obsolete since gmultipath was committed in FreeBSD 7.
(no warning added, since this is a very obscure class).
These will all be removed in FreeBSD 12.
MFC After: 3 days
Differential Revision: https://reviews.freebsd.org/D11935
Note: Classes will be removed after MFC
Notes
Notes:
svn path=/head/; revision=322318
Diffstat (limited to 'sys/geom')
-rw-r--r-- | sys/geom/geom_bsd.c | 8 | ||||
-rw-r--r-- | sys/geom/geom_mbr.c | 8 | ||||
-rw-r--r-- | sys/geom/geom_sunlabel.c | 8 | ||||
-rw-r--r-- | sys/geom/geom_vol_ffs.c | 7 |
4 files changed, 31 insertions, 0 deletions
diff --git a/sys/geom/geom_bsd.c b/sys/geom/geom_bsd.c index be3ec333aec9..ff29a1629f59 100644 --- a/sys/geom/geom_bsd.c +++ b/sys/geom/geom_bsd.c @@ -72,6 +72,8 @@ FEATURE(geom_bsd, "GEOM BSD disklabels support"); #define LABELSIZE (148 + 16 * MAXPARTITIONS) +static int g_bsd_once; + static void g_bsd_hotwrite(void *arg, int flag); /* * Our private data about one instance. All the rest is handled by the @@ -504,6 +506,12 @@ g_bsd_taste(struct g_class *mp, struct g_provider *pp, int flags) g_slice_conf_hot(gp, 0, ms->labeloffset, LABELSIZE, G_SLICE_HOT_ALLOW, G_SLICE_HOT_DENY, G_SLICE_HOT_CALL); gsp->hot = g_bsd_hotwrite; + if (!g_bsd_once) { + g_bsd_once = 1; + printf( + "WARNING: geom_bsd (geom %s) is deprecated, " + "use gpart instead.\n", gp->name); + } return (gp); } /* diff --git a/sys/geom/geom_mbr.c b/sys/geom/geom_mbr.c index a811e351b1a4..f2869d3a3e69 100644 --- a/sys/geom/geom_mbr.c +++ b/sys/geom/geom_mbr.c @@ -57,6 +57,8 @@ FEATURE(geom_mbr, "GEOM DOS/MBR partitioning support"); #define MBR_CLASS_NAME "MBR" #define MBREXT_CLASS_NAME "MBREXT" +static int g_mbr_once = 0; + static struct dos_partition historical_bogus_partition_table[NDOSPART] = { { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, }, @@ -316,6 +318,12 @@ g_mbr_taste(struct g_class *mp, struct g_provider *pp, int insist) g_slice_spoiled(cp); return (NULL); } + if (!g_mbr_once) { + g_mbr_once = 1; + printf( + "WARNING: geom_mbr (geom %s) is deprecated, " + "use gpart instead.\n", gp->name); + } return (gp); } diff --git a/sys/geom/geom_sunlabel.c b/sys/geom/geom_sunlabel.c index 5ac35adca1b1..7ec02a324313 100644 --- a/sys/geom/geom_sunlabel.c +++ b/sys/geom/geom_sunlabel.c @@ -65,6 +65,8 @@ struct g_sunlabel_softc { u_char labelsum[16]; }; +static int g_sunlabel_once = 0; + static int g_sunlabel_modify(struct g_geom *gp, struct g_sunlabel_softc *ms, u_char *sec0) { @@ -312,6 +314,12 @@ g_sunlabel_taste(struct g_class *mp, struct g_provider *pp, int flags) g_slice_conf_hot(gp, 0, 0, SUN_SIZE, G_SLICE_HOT_ALLOW, G_SLICE_HOT_DENY, G_SLICE_HOT_CALL); gsp->hot = g_sunlabel_hotwrite; + if (!g_sunlabel_once) { + g_sunlabel_once = 1; + printf( + "WARNING: geom_sunlabel (geom %s) is deprecated, " + "use gpart instead.\n", gp->name); + } return (gp); } diff --git a/sys/geom/geom_vol_ffs.c b/sys/geom/geom_vol_ffs.c index 4fa4da599893..81e1e2cff601 100644 --- a/sys/geom/geom_vol_ffs.c +++ b/sys/geom/geom_vol_ffs.c @@ -48,6 +48,7 @@ FEATURE(geom_vol, "GEOM support for volume names from UFS superblock"); #define VOL_FFS_CLASS_NAME "VOL_FFS" static int superblocks[] = SBLOCKSEARCH; +static int g_vol_ffs_once; struct g_vol_ffs_softc { char * vol; @@ -145,6 +146,12 @@ g_vol_ffs_taste(struct g_class *mp, struct g_provider *pp, int flags) g_slice_spoiled(cp); return (NULL); } + if (!g_vol_ffs_once) { + g_vol_ffs_once = 1; + printf( + "WARNING: geom_vol_Ffs (geom %s) is deprecated, " + "use glabel instead.\n", gp->name); + } return (gp); } |